rhasspy / wyoming

Peer-to-peer protocol for voice assistants
MIT License
103 stars 17 forks source link

Artifact requires version even though it's marked as optional #8

Closed hugobloem closed 6 months ago

hugobloem commented 7 months ago

Hi,

The latest version of wyoming (1.5.2) adds the version number to the artifact. However, even though the version number is marked as optional, initialising without results in an error.

Best wishes, Hugo

synesthesiam commented 6 months ago

This stems from a limitation of Python dataclasses with inheritance, where you can't have a required attribute after an attribute with a default value: https://medium.com/@aniscampos/python-dataclass-inheritance-finally-686eaf60fbb5

The issue has been solved in Python 3.10, but the wyoming library still supports back to Python 3.8.