HAKit

Swift library for communicating with Home Assistant.

OTHER License

Stars
32
Committers
3

Bot releases are visible (Hide)

HAKit - 0.4.2

Published by bgoncal 6 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/home-assistant/HAKit/compare/0.4.1...0.4.2

HAKit - 0.4.1 Latest Release

Published by bgoncal 6 months ago

What's Changed

Full Changelog: https://github.com/home-assistant/HAKit/compare/0.4...0.4.1

HAKit - 0.4.1

Published by bgoncal 6 months ago

What's Changed

Full Changelog: https://github.com/home-assistant/HAKit/compare/0.4...0.4.1

HAKit - 0.4

Published by bgoncal 8 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/home-assistant/HAKit/compare/0.3...0.4

HAKit - 0.3

Published by zacwest over 3 years ago

  • Added: Subscriptions will now retry (when their request shouldRetry) when the HA config changes or components are loaded.
  • Changed: HAConnectionInfo now has a throwing initializer. See HAConnectionInfo.CreationError for details.
HAKit - 0.2.2

Published by zacwest over 3 years ago

  • Added: Allow overriding User-Agent header in connection via HAConnectionInfo.
  • Fixed: Host header now properly excludes port so we match URLSession behavior.
  • Fixed: Services now load successfully for versions of HA Core prior to 2021.3 when name was added.
HAKit - 0.2.1

Published by zacwest over 3 years ago

  • Changed: HAGlobal's log block now contains a log level, either info or error.
  • Fixed: Failed populate requests no longer crash when a later subscription is updated.
  • Fixed: The error log from a failed HACache<T> populate now contains more information.
  • Fixed: Dates from HA which lack milliseconds no longer fail to parse.
HAKit - 0.2.0

Published by zacwest over 3 years ago

  • Added: HACache<T> which can send requests and subscribe to events to keep its value up-to-date.
  • Added HACachesContainer accessible as connection.caches which contains built-in caches.
  • Added: connection.caches.states which contains and keeps up-to-date all entity states.
  • Added: connection.caches.user which contains the current user.
  • Added: Optional PromiseKit target/subspec.
  • Added: Optional HAMockConnection target/subspec for use in test cases.
  • Added: connectAutomatically parameter to connection creation. This will call connect() when requests are sent if not connected.
  • Added: .getServices() typed request.
  • Added: .getStates() typed request.
  • Changed: Swapped to using the custom (not URLSession) engine in Starscream to try and figure out if URLSession is causing connectivity issues.
  • Changed: attributes and context on HAEntity are now represented by parsed types.
  • Changed: Many internal cases of JSON parsing and decoding are now done off the main thread.
  • Changed: Events to unknown subscriptions (that is, a logic error in the library somewhere) no longer unsubscribe as this was sending erroneously during reconnects.
  • Fixed: Calling connect() when already connected no longer disconnects and reconnects.
  • Fixed: Calling cancel() on a subscription more than once or on a non-retried subscription sends multiple unsubscribe requests.
  • Fixed: Disconnections silently occurred due to e.g. suspension; pings are now sent regularly to make sure the connection really is active.
HAKit - 0.1.0

Published by zacwest over 3 years ago

Initial release. Still under heavy development.