s-knibbs / dataclasses-jsonschema

JSON schema generation from dataclasses
MIT License
166 stars 38 forks source link

UserWarning: Unable to decode value for "_field_name: float" #151

Open lucascbeyeler opened 3 years ago

lucascbeyeler commented 3 years ago

Hi

I need some help to fix this issue... for some reason whenever I try to use pyyaml and there is a float value in the middle of my YAML file, dataclasses-jsonschema starts to freak out with the error above.

While I was investigating I discover that the problem is that pyyaml returns ScalarFloat instead of float and dataclasses-jsonschema does not work with ScalarFloat. Do you know any way that I can enforce float values to be returned by pyyaml or if I can include ScalarFloat as part of this project?

Example:

from dataclasses import dataclass
from yaml import safe_load
from dataclasses_jsonschema import JsonSchemaMixin

class Example(JsonSchemaMixin):

    field: float

output = safe_load(<path_to_yaml>)
Example.from_dict(output)

Regards, Lucas Costa Beyeler

s-knibbs commented 3 years ago

Could you post a reproduction for this issue? For a workaround you could also try ruamel.yaml instead.

lucascbeyeler commented 3 years ago

Hi,

Thanks for taking time to see my message. I tried and I got a different error: UserWarning: Unable to create schema for 'ScalarFloat'

Regards, Lucas Costa Beyeler