What's Changed
* Bump version to 1.0.0 (135) thecode
* Add typing to example.py (138) thecode
* Add py.typed file (137) bieniu
* Enable strict typing (127) chemelli74
* Strict typing part V: block_device.py (136) chemelli74
* Strict typing part IV: rpc_device.py (133) chemelli74
* Strict typing part III: wsrpc.py (132) chemelli74
* Update README.md file for Gen2 support (134) thecode
* Strict typing part I: coap.py (130) chemelli74
* Strict typing part II: common.py (131) chemelli74
* Revert BlockDevice shutdown to sync (129) thecode
* Add Shelly Gen2 Support (128) thecode
Shelly Gen2 Support
Shelly Gen2 devices are based on RPC over Web socket and are not backward compatible with Gen1 (CoAP based) devices.
This is a refactor of the `aioshelly` library and has breaking changes. Library will support both Gen1 & Gen2 devices.
More details about Gen2 devices API can be found here: https://shelly-api-docs.shelly.cloud/gen2/
Breaking changes
Due to refactoring for supporting Gen2 devices, Gen1 (CoAP/Block) device class is moved to `block_device`, in most cases this results by imports using Gen1 block device changed, major changes:
- `from aioshelly import Block` is changed to `from aioshelly.block_device import Block`
- Constants should be imported from `aioshelly.const` instead from `aioshelly`
- Exceptions should be imported from `aioshelly.exceptions` instead from `aioshelly`
- `request_s` which was for internal use is removed from `device.initialize`
- ` ConnectionOptions` and `get_info` are now at `common.py` instead of `__init__.py`