Skip to content

Releases: Taraman17/pyHomee

v1.0.3

21 Dec 23:23
Compare
Choose a tag to compare

v1.0.3 (2024-12-21)

Fix

  • fix: add asyncio.Timeout error (d9014f2)

Unknown

  • Merge pull request #17 from Taraman17/dev

fix: add asyncio.Timeout error (7d1d44b)

v1.0.2

03 Dec 14:51
Compare
Choose a tag to compare

v1.0.2 (2024-12-03)

Fix

  • fix: Unexpected exception when login information is incorrect. #14 (473866b)

Unknown

  • Merge pull request #15 from Taraman17/dev

fix: Unexpected exception when login is incorrect. (3e60405)

v1.0.1

01 Dec 12:18
Compare
Choose a tag to compare

v1.0.1 (2024-12-01)

Fix

  • fix: change foldername to reflect new package name (aaeb6d8)

v1.0.0

30 Nov 23:35
Compare
Choose a tag to compare

v1.0.0 (2024-11-30)

Breaking

  • fix: Finalise release.

BREAKING CHANGE: Using IntEnum for constants.

Addressing members changed.
Corrected Names of following NodeProtocol entries:

  • WMBUS -> WM_BUS
  • HTTPAVM -> HTTP_AVM
  • HTTPNETATMO -> HTTP_NETATMO
  • HTTPKOUBACHI -> HTTP_KOUBACHI
  • HTTPNEST -> HTTP_NEST
  • IOCUBE -> IO_CUBE
  • HTTPCCU2 -> HTTP_CCU_2
  • HTTPUPN_P -> HTTP_UPN_P
  • HTTPNUKI -> HTTP_NUKI
  • HTTPSEMS -> HTTP_SEMS
  • SIGMA_ZWAVE -> ZWAVE_V3
  • HTTPWOLF -> HTTP_WOLF
  • HTTPMY_STROM -> HTTP_MY_STROM

Refactored code to make it python-standard-conforming:

Homee attributes, that changed names:

  • pingInterval -> ping_interval
  • reconnectInterval -> reconnect_interval
  • maxRetries -> max_retries
  • shouldReconnect -> should_reconnect
  • deviceId -> device_id
  • shouldClose -> should_close

Some methods are now public - the old private versions log deprecation warnings.

Raw data of Homee Classes is now accessible through the .raw_data public attribute i.s.o .raw_data
To update the raw data, the method .set_data(data) is used. (e2e1848)

  • feat: use coroutines for Homee callbacks

BREAKING CHANGE: Homee callbacks need to be awaitable, i.e. async functions. Handleing callbacks in the event loop should provide a better development experience since most functions in the Homee api are async now. (99296e6)

Chore

  • chore(Git): add homee json dump to gitignore (9234d26)

  • chore(Git): ignore local testing script (7dd4a11)

  • chore(CI): add version variable to config (c34632a)

  • chore(CI): add workflow for semantic release (c174217)

  • chore: adjust package structure for PyPi release (ac0368f)

  • chore: add LICENSE (d0ce035)

Ci

  • ci: update release workflow to latest versions (785749f)

Documentation

  • docs: use large badges in README (370006b)

  • docs: mention Home Assistant homee integration in README (d44c6b6)

  • docs: add link to websockets library in README (5f42af6)

  • docs: update examples in README (0177066)

  • docs: add badges ♥ (a7e3a28)

  • docs: add install instructions and bump version (f0208a5)

  • docs: add README (8701f0a)

Feature

  • feat: Add VIRTUAL_DEVICE as NodeProtocol 28 (8030e3f)

  • feat: Add MAC Address to settings
    This will add the MAC Address derived from HomeeID as homee.settings.mac_address (9a998ce)

  • feat: Add parsing of users and devices.
    Adding support for homee users and their devices reported by the cube.
    Available via Homee.users and Homee.devices (0818f8c)

  • feat: parse warning message
    This adds support for the warning message type in shich homee announces events or start and stop of certain modes. (86d63f5)

  • feat: Fix automatic reconnection (#12)

  • Remove expicit ping

Removing the ping-handler function and it's call, since websockets sends pings automatically and the function was causing async_io errors.

  • Refine error handling and logging

Narrrow websocket exception hadnling to "ConnectionClosedError" from "ConnectionClosed" where feasible.
some logging changes

  • expose attribute_map

Expose _attribute_map as public property, since it is used in hass-homee

  • Tackle deprecations and lint warnings
  • Replace typing.List with list
  • remove unnecessary else:s
  • use Callable from collections.abc
  • refine logging
  • fix typo

  • fix some nits

  • make sure disconnect warning is only logged once.
  • move logging of reconnect attempts to proper location. (2db8f2f)
  • feat: change get_attribute to update_attribute and add update_node (#9)

  • add function to get an update for an attribute

  • Change get_attribute to update_attribute and add update_node (750bfef)

  • feat: add function to get an update for an attribute (#8) (298b5af)

  • feat: add attribute options (#6)

Homee Attributes can have options, that will be exposed with this patch.
Options that are not present will have empty values. (81f339a)

  • feat: Change Logging to use nemd logger (#3)

This changes logging, so it uses a logger with (name), so logs can be identified easier.

This also will enable log configuration in Home Assistant. (40f32c4)

  • feat: add more constants to allow additional devices / profiles (#2)
  • feat: add working reconnection logic during authentication (235ea6f)

  • feat: enable automatic reconnection attempts (ee3fb00)

  • feat: add manual websocket ping handler (773caa0)

  • feat: handle groups, nodes, group and relationship message types (fddac28)

  • feat: manage groups, settings and relationships using model (5650375)

  • feat: add HomeeRelationship model (21f2db0)

  • feat: add HomeeOptions model (45efe54)

  • feat: add HomeeGroup model (9d3759f)

  • feat: add add_on_changed_listener() to HomeeNode to support better update handling (12cc3d1)

  • feat: add utility methods for getting nodes and atributes by id (f43014c)

  • feat: support updating/adding nodes after receiving a 'nodes' message (535602b)

  • feat: provide async disconnected event

await Homee.wait_until_disconnected() can now be used to wait until the connection has been closed. (c019ef5)

  • feat: port to websockets package (1b578bc)

  • feat: raise unique exceptions while acquiring access token (edac67b)

Fix

Read more