galaxyproject / galaxy

Data intensive science for everyone.
https://galaxyproject.org
Other
1.37k stars 992 forks source link

Generate OpenAPI Python Client #15176

Open jmchilton opened 1 year ago

jmchilton commented 1 year ago

Not working yet...

python ./scripts/dump_openapi_schema.py > /tmp/gxschema.json &&  openapi-python-client generate --path /tmp/gxschema.json
No Galaxy config file found, running from current working directory: /Users/jxc755/workspace/galaxy
/Users/jxc755/workspace/galaxy/lib/galaxy/webapps/openapi/utils.py:461: UserWarning: Merging operation with id fetch_json_api_tools_fetch_post with operation with id fetch_form_api_tools_fetch_post.
  warnings.warn(message)
Error(s) encountered while generating, client was not created

Failed to parse OpenAPI document

3 validation errors for OpenAPI
paths -> /api/pages -> get -> parameters -> 6 -> schema -> $ref
  field required (type=value_error.missing)
paths -> /api/pages -> get -> parameters -> 6 -> schema -> exclusiveMaximum
  value could not be parsed to a boolean (type=type_error.bool)
paths -> /api/pages -> get -> parameters -> 6 -> $ref
  field required (type=value_error.missing)

If you believe this was a mistake or this tool is missing a feature you need, please open an issue at https://github.com/openapi-generators/openapi-python-client/issues/new/choose
jmchilton commented 1 year ago

Eliminating just that route from the JSON/YAML doc allows making some progress.

Update: Just getting rid of that exclusiveMaximum element allows generation.

mvdbeek commented 1 year ago

It does look like that client isn't ready for 3.1 yet (pydantic generates 3.1, except it's forced to 3.0 for swagger):

Error(s) encountered while generating, client was not created

Failed to parse OpenAPI document

7 validation errors for OpenAPI
paths -> /api/pages -> get -> parameters -> 6 -> schema -> $ref
  field required (type=value_error.missing)
paths -> /api/pages -> get -> parameters -> 6 -> schema -> exclusiveMaximum
  value could not be parsed to a boolean (type=type_error.bool)
paths -> /api/pages -> get -> parameters -> 6 -> $ref
  field required (type=value_error.missing)
openapi
  unexpected value; permitted: '3.0.0' (type=value_error.const; given=3.1.0; permitted=('3.0.0',))
openapi
  unexpected value; permitted: '3.0.1' (type=value_error.const; given=3.1.0; permitted=('3.0.1',))
openapi
  unexpected value; permitted: '3.0.2' (type=value_error.const; given=3.1.0; permitted=('3.0.2',))
openapi
  unexpected value; permitted: '3.0.3' (type=value_error.const; given=3.1.0; permitted=('3.0.3',))
mvdbeek commented 1 year ago

OK, to summarize the status:

pydantic generates OpenAPI 3.1.0 documents, and FastAPI forces the schema to 3.0.2, even though it isn't. exclusiveMaximum is a boolean in 3.02 and a number in 3.1.0. I've changed the dumping script to produce 3.1.0 as the version, fixed a bunch of invalid things in https://github.com/galaxyproject/galaxy/pull/15183 and #15189 and added linting for the generated schema.

I'm trying to use https://github.com/commonism/aiopenapi3/, which can generate pydantic models, and is supposed to work for recursive models, but it seems that doesn't quite work for our recursive models:

from aiopenapi3 import OpenAPI
import json

js = json.load(open('_schema.json'))
OpenAPI(url="http://localhost:8080/galaxy", document=js)
fails with a recursion error ``` Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 271, in annotationsof discriminator = next(filter(lambda x: name == x.propertyName, discriminators)) StopIteration During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 292, in get_type return self._model_type AttributeError: _model_type During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/Users/mvandenb/src/galaxy/aio.py", line 5, in OpenAPI(url="http://localhost:8080/galaxy", document=js) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/openapi.py", line 249, in __init__ self._init_schema_types() File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/openapi.py", line 458, in _init_schema_types types[b._get_identity("X")] = b.get_type() File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 244, in annotationsof annotations["__root__"] = Model.typeof(schema) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 113, in from_schema annotations.update(Model.annotationsof(schema, discriminators, schemanames, fwdref=True)) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 291, in annotationsof r = Model.typeof(f, fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 219, in typeof r = List[Model.typeof(schema.items)] File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 230, in typeof return schema.get_type(fwdref=fwdref) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 303, in get_type return self.set_type(names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 278, in set_type self._model_type = Model.from_schema(self, names, discriminators) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 85, in from_schema t = tuple( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 86, in i.get_type( File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 294, in get_type return self.set_type(names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/base.py", line 281, in set_type return Model.from_schema(self, names, discriminators, extra) File "/Users/mvandenb/src/aiopenapi3/aiopenapi3/model.py", line 147, in from_schema m = types.new_class(type_name, (BaseModel,), {}, lambda ns: ns.update(fields)) File "/usr/local/Cellar/python@3.9/3.9.15/Frameworks/Python.framework/Versions/3.9/lib/python3.9/types.py", line 77, in new_class return meta(name, resolved_bases, ns, **kwds) File "pydantic/main.py", line 198, in pydantic.main.ModelMetaclass.__new__ File "pydantic/fields.py", line 506, in pydantic.fields.ModelField.infer File "pydantic/fields.py", line 436, in pydantic.fields.ModelField.__init__ File "pydantic/fields.py", line 557, in pydantic.fields.ModelField.prepare File "pydantic/fields.py", line 834, in pydantic.fields.ModelField.populate_validators File "pydantic/class_validators.py", line 263, in pydantic.class_validators.prep_validators File "pydantic/class_validators.py", line 246, in pydantic.class_validators.make_generic_validator File "/usr/local/Cellar/python@3.9/3.9.15/Frameworks/Python.framework/Versions/3.9/lib/python3.9/inspect.py", line 3113, in signature return Signature.from_callable(obj, follow_wrapped=follow_wrapped) File "/usr/local/Cellar/python@3.9/3.9.15/Frameworks/Python.framework/Versions/3.9/lib/python3.9/inspect.py", line 2862, in from_callable return _signature_from_callable(obj, sigcls=cls, File "/usr/local/Cellar/python@3.9/3.9.15/Frameworks/Python.framework/Versions/3.9/lib/python3.9/inspect.py", line 2325, in _signature_from_callable return _signature_from_function(sigcls, obj, File "/usr/local/Cellar/python@3.9/3.9.15/Frameworks/Python.framework/Versions/3.9/lib/python3.9/inspect.py", line 2196, in _signature_from_function parameters.append(Parameter(name, annotation=annotation, File "/usr/local/Cellar/python@3.9/3.9.15/Frameworks/Python.framework/Versions/3.9/lib/python3.9/inspect.py", line 2500, in __init__ self._kind = _ParameterKind(kind) RecursionError: maximum recursion depth exceeded ```
jmchilton commented 1 year ago

The 3.0.3 was so close - I had Python artifacts. My next step would be just to parameterize that and hack the schema when passed 3.0.X in our utils. It seems you prefer the aio clients though and that is fine - willing to give you time if fixing bugs in that project is your preferred route.

commonism commented 1 year ago

Hi,

it will parse properly now. You've had recursion in a list which was not handled properly before https://github.com/commonism/aiopenapi3/pull/55/commits/2687f25434298b90c3121cfed7b5d370e91a661e.

If you stick with aiopenapi3, please @commonism when discussing the OpenAPI problems you run into.

mvdbeek commented 1 year ago

Awesome, thanks so much!

commonism commented 1 year ago

It seems you prefer the aio clients though

aiopenapi3 does both. https://github.com/commonism/aiopenapi3#asyncio

sync is nice for the first steps - usually debugging the description document mismatches. beyond - async is great

Things I'd change with the description document: