- Ensure overridden user_data_path is honored. (#37)
- Expose jaraco.abode.config.paths.override to allow overriding of paths by downstream consumers. (#36)
- Add KVS stream enabling support and URL debugging. (#34)
No significant changes.
- Refactored sensor specialization. (#28)
- Substantial refactoring and simplification around the BinarySensor classes and subclasses. Support for 'room_sensor' and 'temperature_sensor' were removed since there is no evidence they were ever needed. Only 'lm' sensors are considered multi-sensors (with temperature and humidity). It's conceivable these changes will break some existing cases. Please report any issues.
- Restored specialized 'is_on' behavior to base BinarySensor for home-assistant/core#121300.
- Add support for interacting with the client.
- Restore support for details in SocketIOException, used in socketio module. (#27)
No significant changes.
- Require Python 3.8 or later.
Minor bugfixes and test updates.
Device methods that change state (.set_status
, .set_level
,
.switch_on
, .switch_off
, .set_color
, .set_color_temp
,
.lock
, .unlock
) no longer return True
on success or
False
if no control_url
is set. Instead, these methods now
return None
and an exception is raised if no control_url
is set
(where required).
More internal refactoring.
Deprecated unnecessary Automation.automation_id
and .is_enabled
properties. Use .id
or .enabled
instead.
Substantial refactoring of "constants". All constants have been
removed from jaraco.abode.helpers.constants
and either
inlined, replaced by constants in the relevant modules, or
replaced by other factors already present. These changes should
be backward-compatible except for libraries reliant on the
constants.
Removed unnecessary _device_id
and _device_uuid
accessors
and deprecated device_id
and device_uuid
accessors in
favor of simply Device.id
and Device.uuid
accessors.
Remove aliases for Device.{_type,_generic_type,_name,_type_tag}
.
#21: Derive UUID from MAC address late and only for Alarm objects.
#16: Ensure that parent directories are created for
config.paths.user_data
.
Substantial refactoring in socketio logic.
#14: Fixed three minor issues with sockets/events.
#12: Restore support for Client.get_devices(generic_type)
as an
iterable.
Substantial refactoring and cleanup.
Switched to platformdirs
dependency from app_paths
.
Project no longer exposes a "cache" (or related options for cache-path). Instead, state from cookies from the API is stored in an "app data" path (platform-specific).
It's no longer possible to disable the "cache". Cookies are persisted unconditionally.
As a result, a UUID is persisted only if an API login succeeded.
Substantial refactoring for better namespacing.
Class names no longer are prefixed by "Abode" (including Exceptions).
"Abode" object is now called "Client".
Updated tests to use native objects.
#9: Internal refactoring to store the device state directly and reflect it as properties.
#8: Added support for camera snapshots.
Refactoring and cleanup.
Removed abodepy compatibility.
#3: Removed test dependency on npm.
#4: Project is now continuously tested on Windows.
Cleaned up usage of unittest in tests.
#1: Passwords are no longer stored in or retrieved from the cache file. Instead, credentials must be supplied on the command line or loaded from keyring. This approach allows the passwords to be stored in a secure, encrypted, system store. To avoid requiring a username on each invocation, the default username is loaded from the ABODE_USERNAME environment variable. If the password is not present, the user will be prompted for it on the first invocation.
#5: Added support for Abode Cam 2 devices.
#6: Added support for new event codes in ALARM_END_GROUP and ARM_FAULT_GROUP groups.
Fixed bug in CLI.
Cleaned up README and other references to abodepy
.
Added abode
command, superseding abodepy
.
Moved modules to jaraco.abode
.
Package now uses relative imports throughout.
Prefer pytest for assertions.
General cleanup.
Refreshed packaging. Enabled automated releases.
Require Python 3.7 or later.
Initial release based on abodepy 1.2.1.