The code was restructured to remove a lot of idiosynchronisies and align better with WoT standards.
Uses WoT TD fragments as the default dataclass/model for moving interaction metadata around the different components, which is also much cleaner.
Introduces:
- scripting API compatible HTTP client
- descriptors for all of properties, actions, events and state machine. previously only property was a descriptor
- descriptor registries for idiomatic introspection of a Thing's capabilites
- full support of pydantic and JSON schema in all areas
- HTTP basic auth
- significant improvements in terms of readability over the ZMQ messaging contract
- observe_property op on client side (although we always supported on server side)
- major improvements in test coverage, both breadth and depth
Full Changelog: v0.2.11...v0.3.1