Skip to content

Tags: rom3r4/python-kasa

Tags

0.7.7

Toggle 0.7.7's commit message

Verified

This tag was signed with the committer’s verified signature.
sdb9696 Steven B.
[Full Changelog](python-kasa/python-kasa@0.7.6...0.7.7)

**Release summary:**

- Bugfix for child device device creation error with credentials_hash
- PIR support for iot dimmers and wall switches.
- Various small enhancements and project improvements.

**Implemented enhancements:**

- Add PIR&LAS for wall switches mentioning PIR support [\python-kasa#1227](python-kasa#1227) (@rytilahti)
- Expose ambient light setting for iot dimmers [\python-kasa#1210](python-kasa#1210) (@rytilahti)
- Expose PIR enabled setting for iot dimmers [\python-kasa#1174](python-kasa#1174) (@rytilahti)
- Add childprotection module [\python-kasa#1141](python-kasa#1141) (@rytilahti)
- Initial trigger logs implementation [\python-kasa#900](python-kasa#900) (@rytilahti)

**Fixed bugs:**

- Fix AES child device creation error [\python-kasa#1220](python-kasa#1220) (@sdb9696)

**Project maintenance:**

- Update TC65 fixture [\python-kasa#1225](python-kasa#1225) (@rytilahti)
- Update smartcamera fixtures from latest dump\_devinfo [\python-kasa#1224](python-kasa#1224) (@sdb9696)
- Add component queries to smartcamera devices [\python-kasa#1223](python-kasa#1223) (@sdb9696)
- Update try\_connect\_all to be more efficient and report attempts [\python-kasa#1222](python-kasa#1222) (@sdb9696)
- Use stacklevel=2 for warnings to report on callsites [\python-kasa#1219](python-kasa#1219) (@rytilahti)
- parse\_pcap\_klap: various code cleanups [\python-kasa#1138](python-kasa#1138) (@rytilahti)

0.7.6

Toggle 0.7.6's commit message

Verified

This tag was signed with the committer’s verified signature.
sdb9696 Steven B.
[Full Changelog](python-kasa/python-kasa@0.7.5...0.7.6)

**Release summary:**

- Experimental support for Tapo cameras and the Tapo H200 hub which uses the same protocol.
- Better timestamp support across all devices.
- Support for new devices P304M, S200D and S200B (see README.md for note on the S200 support).
- Various other fixes and minor features.

**Implemented enhancements:**

- Add support for setting the timezone [\python-kasa#436](python-kasa#436)
- Add stream\_rtsp\_url to camera module [\python-kasa#1197](python-kasa#1197) (@sdb9696)
- Try default logon credentials in SslAesTransport [\python-kasa#1195](python-kasa#1195) (@sdb9696)
- Allow enabling experimental devices from environment variable [\python-kasa#1194](python-kasa#1194) (@sdb9696)
- Add core device, child and camera modules to smartcamera [\python-kasa#1193](python-kasa#1193) (@sdb9696)
- Fallback to get\_current\_power if get\_energy\_usage does not provide current\_power [\python-kasa#1186](python-kasa#1186) (@Fulch36)
- Add https parameter to device class factory [\python-kasa#1184](python-kasa#1184) (@sdb9696)
- Add discovery list command to cli [\python-kasa#1183](python-kasa#1183) (@sdb9696)
- Add Time module to SmartCamera devices [\python-kasa#1182](python-kasa#1182) (@sdb9696)
- Add try\_connect\_all to allow initialisation without udp broadcast [\python-kasa#1171](python-kasa#1171) (@sdb9696)
- Update dump\_devinfo for smart camera protocol [\python-kasa#1169](python-kasa#1169) (@sdb9696)
- Enable newer encrypted discovery protocol [\python-kasa#1168](python-kasa#1168) (@sdb9696)
- Initial TapoCamera support [\python-kasa#1165](python-kasa#1165) (@sdb9696)
- Add waterleak alert timestamp [\python-kasa#1162](python-kasa#1162) (@rytilahti)
- Create common Time module and add time set cli command [\python-kasa#1157](python-kasa#1157) (@sdb9696)

**Fixed bugs:**

- Only send 20002 discovery request with key included [\python-kasa#1207](python-kasa#1207) (@sdb9696)
- Fix SslAesTransport default login and add tests [\python-kasa#1202](python-kasa#1202) (@sdb9696)
- Fix device\_config serialisation of https value [\python-kasa#1196](python-kasa#1196) (@sdb9696)

**Added support for devices:**

- Add S200B\(EU\) fw 1.11.0 fixture [\python-kasa#1205](python-kasa#1205) (@sdb9696)
- Add TC65 fixture [\python-kasa#1200](python-kasa#1200) (@rytilahti)
- Add P304M\(UK\) test fixture [\python-kasa#1185](python-kasa#1185) (@Fulch36)
- Add H200 experimental fixture [\python-kasa#1180](python-kasa#1180) (@sdb9696)
- Add S200D button fixtures [\python-kasa#1161](python-kasa#1161) (@rytilahti)

**Project maintenance:**

- Fix mypy errors in parse_pcap_klap [\python-kasa#1214](python-kasa#1214) (@sdb9696)
- Make HSV NamedTuple creation more efficient [\python-kasa#1211](python-kasa#1211) (@sdb9696)
- dump\_devinfo: query get\_current\_brt for iot dimmers [\python-kasa#1209](python-kasa#1209) (@rytilahti)
- Add trigger\_logs and double\_click to dump\_devinfo helper [\python-kasa#1208](python-kasa#1208) (@sdb9696)
- Fix smartcamera childdevice module [\python-kasa#1206](python-kasa#1206) (@sdb9696)
- Add H200\(EU\) fw 1.3.2 fixture [\python-kasa#1204](python-kasa#1204) (@sdb9696)
- Do not pass None as timeout to http requests [\python-kasa#1203](python-kasa#1203) (@sdb9696)
- Update SMART test framework to use fake child protocols [\python-kasa#1199](python-kasa#1199) (@sdb9696)
- Allow passing an aiohttp client session during discover try\_connect\_all [\python-kasa#1198](python-kasa#1198) (@sdb9696)
- Add test framework for smartcamera [\python-kasa#1192](python-kasa#1192) (@sdb9696)
- Rename experimental fixtures folder to smartcamera [\python-kasa#1191](python-kasa#1191) (@sdb9696)
- Combine smartcamera error codes into SmartErrorCode [\python-kasa#1190](python-kasa#1190) (@sdb9696)
- Allow deriving from SmartModule without being registered [\python-kasa#1189](python-kasa#1189) (@sdb9696)
- Improve supported module checks for hub children [\python-kasa#1188](python-kasa#1188) (@sdb9696)
- Update smartcamera to support single get/set/do requests [\python-kasa#1187](python-kasa#1187) (@sdb9696)
- Add S200B\(US\) fw 1.12.0 fixture [\python-kasa#1181](python-kasa#1181) (@sdb9696)
- Add T110\(US\), T310\(US\) and T315\(US\) sensor fixtures [\python-kasa#1179](python-kasa#1179) (@sdb9696)
- Enforce EOLs for \*.rst and \*.md [\python-kasa#1178](python-kasa#1178) (@rytilahti)
- Convert fixtures to use unix newlines [\python-kasa#1177](python-kasa#1177) (@rytilahti)
- Add motion sensor to known categories [\python-kasa#1176](python-kasa#1176) (@rytilahti)
- Drop urllib3 dependency and create ssl context in executor thread [\python-kasa#1175](python-kasa#1175) (@sdb9696)
- Expose smart child device map as a class constant [\python-kasa#1173](python-kasa#1173) (@sdb9696)

0.7.5

Toggle 0.7.5's commit message

Verified

This tag was signed with the committer’s verified signature.
sdb9696 Steven B.
[Full Changelog](python-kasa/python-kasa@0.7.4...0.7.5)

**Release summary:**

- Fix for KP303 on Firmware 1.0.6
- Fix for `on_since` value jitter
- Various maintenance items

**Breaking changes:**

- Make iot time timezone aware [\python-kasa#1147](python-kasa#1147) (@sdb9696)

**Fixed bugs:**

- Use tzinfo in time constructor instead of astime for iot devices [\python-kasa#1158](python-kasa#1158) (@sdb9696)
- Send empty dictionary instead of null for iot queries [\python-kasa#1145](python-kasa#1145) (@sdb9696)
- Stabilise on\_since value for smart devices [\python-kasa#1144](python-kasa#1144) (@sdb9696)
- parse\_pcap\_klap: require source host [\python-kasa#1137](python-kasa#1137) (@rytilahti)
- parse\_pcap\_klap: use request\_uri for matching the response [\python-kasa#1136](python-kasa#1136) (@rytilahti)

**Project maintenance:**

- Cache zoneinfo for smart devices [\python-kasa#1156](python-kasa#1156) (@sdb9696)
- Correctly define SmartModule.call as an async function [\python-kasa#1148](python-kasa#1148) (@sdb9696)
- Remove async magic patch from tests [\python-kasa#1146](python-kasa#1146) (@sdb9696)
- Move feature initialization from \_\_init\_\_ to \_initialize\_features [\python-kasa#1140](python-kasa#1140) (@rytilahti)

0.7.4

Toggle 0.7.4's commit message

Verified

This tag was signed with the committer’s verified signature.
sdb9696 Steven B.
[Full Changelog](python-kasa/python-kasa@0.7.3...0.7.4)

**Release summary:**

- KL135 color temp range corrected to 9000k max
- Minor enhancements and project maintenance

**Implemented enhancements:**

- Add factory\_reset\(\) to iotdevice [\python-kasa#1125](python-kasa#1125) (@rytilahti)
- Add reboot\(\) to the device interface [\python-kasa#1124](python-kasa#1124) (@rytilahti)
- Add factory-reset command to cli [\python-kasa#1108](python-kasa#1108) (@rytilahti)

**Fixed bugs:**

- Extend KL135 ct range up to 9000K [\python-kasa#1123](python-kasa#1123) (@rytilahti)
- Fix cli command for device off [\python-kasa#1121](python-kasa#1121) (@sdb9696)

**Project maintenance:**

- Use pytest-socket to ensure no tests are performing io [\python-kasa#1133](python-kasa#1133) (@sdb9696)
- Enable ruff lint pycodestyle warnings [\python-kasa#1132](python-kasa#1132) (@sdb9696)
- Add autouse fixture to patch asyncio.sleep [\python-kasa#1131](python-kasa#1131) (@sdb9696)
- Mock asyncio.sleep for klapprotocol tests [\python-kasa#1130](python-kasa#1130) (@rytilahti)
- Add fixture for T110 fw 1.9.0 [\python-kasa#1129](python-kasa#1129) (@rytilahti)
- Speed up and simplify github workflows [\python-kasa#1128](python-kasa#1128) (@sdb9696)
- Add KS200M\(US\) fw 1.0.12 fixture [\python-kasa#1127](python-kasa#1127) (@GatorEG)
- Add stale PR/Issue github workflow [\python-kasa#1126](python-kasa#1126) (@sdb9696)
- Add fixture for KL135\(US\) fw 1.0.15 [\python-kasa#1122](python-kasa#1122) (@rytilahti)

0.7.3

Toggle 0.7.3's commit message

Verified

This tag was signed with the committer’s verified signature.
sdb9696 Steven B.
[Full Changelog](python-kasa/python-kasa@0.7.2...0.7.3)

**Release summary:**

- Migrate from `poetry` to `uv` for package/project management.
- Various minor code improvements

**Project maintenance:**

- Do not regenerate aes key pair [\python-kasa#1114](python-kasa#1114) (@sdb9696)
- Fix tests due to yarl URL str output change [\python-kasa#1112](python-kasa#1112) (@sdb9696)
- Add missing type hints to alarm module [\python-kasa#1111](python-kasa#1111) (@rytilahti)
- Add KH100 EU fixtures [\python-kasa#1109](python-kasa#1109) (@rytilahti)
- Migrate from poetry to uv for dependency and package management [\python-kasa#986](python-kasa#986) (@sdb9696)

0.7.2

Toggle 0.7.2's commit message

Verified

This tag was signed with the committer’s verified signature.
sdb9696 Steven B.
[Full Changelog](python-kasa/python-kasa@0.7.1...0.7.2)

**Release summary:**

- **Breaking** change to disable including the check for the latest firmware for tapo devices and newer kasa devices in the standard update cycle. To check for the latest firmware call `check_latest_firmware` on the firmware module or run the `check_latest_firmware` feature.
- Minor bugfixes and improvements.

**Breaking changes:**

- Disable automatic updating of latest firmware [\python-kasa#1103](python-kasa#1103) (@sdb9696)

**Implemented enhancements:**

- Improve performance of dict merge code [\python-kasa#1097](python-kasa#1097) (@bdraco)

**Fixed bugs:**

- Fix logging in iotdevice when a module is module not supported [\python-kasa#1100](python-kasa#1100) (@bdraco)

**Documentation updates:**

- Fix incorrect docs link in contributing.md [\python-kasa#1099](python-kasa#1099) (@sdb9696)

**Project maintenance:**

- Add flake8-pytest-style \(PT\) for ruff [\python-kasa#1105](python-kasa#1105) (@rytilahti)
- Add flake8-logging \(LOG\) and flake8-logging-format \(G\) for ruff [\python-kasa#1104](python-kasa#1104) (@rytilahti)
- Add missing typing\_extensions dependency [\python-kasa#1101](python-kasa#1101) (@sdb9696)
- Remove top level await xdoctest fixture [\python-kasa#1098](python-kasa#1098) (@sdb9696)
- Enable python 3.13, allow pre-releases for CI [\python-kasa#1086](python-kasa#1086) (@rytilahti)

0.7.1

Toggle 0.7.1's commit message
[Full Changelog](python-kasa/python-kasa@0.7.0.5...0.7.1)

**Release highlights:**
- This release consists mainly of bugfixes and project improvements.
- There is also new support for Tapo T100 motion sensors.
- The CLI now supports child devices on all applicable commands.

**Implemented enhancements:**

- Expose reboot action [\python-kasa#1073](python-kasa#1073) (@rytilahti)
- Decrypt KLAP data from PCAP files [\python-kasa#1041](python-kasa#1041) (@clstrickland)
- Support child devices in all applicable cli commands [\python-kasa#1020](python-kasa#1020) (@sdb9696)

**Fixed bugs:**

- Fix iot light effect brightness [\python-kasa#1092](python-kasa#1092) (@sdb9696)
- Enable setting brightness with color temp for smart devices [\python-kasa#1091](python-kasa#1091) (@sdb9696)
- Do not send light\_on value to iot bulb set\_state [\python-kasa#1090](python-kasa#1090) (@sdb9696)
- Allow erroring modules to recover [\python-kasa#1080](python-kasa#1080) (@sdb9696)
- Raise KasaException on decryption errors [\python-kasa#1078](python-kasa#1078) (@sdb9696)
- Update smart request parameter handling [\python-kasa#1061](python-kasa#1061) (@sdb9696)
- Fix light preset module when list contains lighting effects [\python-kasa#1048](python-kasa#1048) (@sdb9696)
- Handle module errors more robustly and add query params to light preset and transition [\python-kasa#1036](python-kasa#1036) (@sdb9696)
- Fix credential hash to return None on empty credentials [\python-kasa#1029](python-kasa#1029) (@sdb9696)

**Added support for devices:**

- Add support for T100 motion sensor [\python-kasa#1079](python-kasa#1079) (@rytilahti)

**Project maintenance:**

- Bump project version to 0.7.0.5 [\python-kasa#1087](python-kasa#1087) (@sdb9696)
- Fix generate\_supported pre commit to run in venv [\python-kasa#1085](python-kasa#1085) (@sdb9696)
- Fix intermittently failing decryption error test [\python-kasa#1082](python-kasa#1082) (@sdb9696)
- Fix mypy pre-commit hook on windows [\python-kasa#1081](python-kasa#1081) (@sdb9696)
- Update RELEASING.md for patch releases [\python-kasa#1076](python-kasa#1076) (@sdb9696)
- Use monotonic time for query timing [\python-kasa#1070](python-kasa#1070) (@sdb9696)
- Fix parse\_pcap\_klap on windows and support default credentials [\python-kasa#1068](python-kasa#1068) (@sdb9696)
- Add fixture file for KP405 fw 1.0.6 [\python-kasa#1063](python-kasa#1063) (@daleye)
- Bump project version to 0.7.0.3 [\python-kasa#1053](python-kasa#1053) (@sdb9696)
- Add KP400\(US\) v1.0.4 fixture [\python-kasa#1051](python-kasa#1051) (@gimpy88)
- Add new HS220 kasa aes fixture [\python-kasa#1050](python-kasa#1050) (@sdb9696)
- Add KS205\(US\) v1.1.0 fixture [\python-kasa#1049](python-kasa#1049) (@gimpy88)
- Add KS200M\(US\) v1.0.11 fixture [\python-kasa#1047](python-kasa#1047) (@sdb9696)
- Add KS225\(US\) v1.1.0 fixture [\python-kasa#1046](python-kasa#1046) (@sdb9696)
- Split out main cli module into lazily loaded submodules [\python-kasa#1039](python-kasa#1039) (@sdb9696)
- Structure cli into a package [\python-kasa#1038](python-kasa#1038) (@sdb9696)
- Add KP400 v1.0.3 fixture [\python-kasa#1037](python-kasa#1037) (@gimpy88)
- Add L920\(EU\) v1.1.3 fixture [\python-kasa#1031](python-kasa#1031) (@rytilahti)
- Update changelog generator config [\python-kasa#1030](python-kasa#1030) (@sdb9696)

0.7.0.5

Toggle 0.7.0.5's commit message

Verified

This tag was signed with the committer’s verified signature.
sdb9696 Steven B.
[Full Changelog](python-kasa/python-kasa@0.7.0.4...0.7.0.5)

A critical bugfix for an issue with some L530 Series devices and a redactor for sensitive info from debug logs.

**Fixed bugs:**

- Only refresh smart LightEffect module daily [\python-kasa#1064](python-kasa#1064)

**Project maintenance:**

- Redact sensitive info from debug logs [\python-kasa#1069](python-kasa#1069)

0.7.0.4

Toggle 0.7.0.4's commit message
[Full Changelog](python-kasa/python-kasa@0.7.0.3...0.7.0.4)

Critical bugfixes for issues with P100s and thermostats.

**Fixed bugs:**

- Use first known thermostat state as main state (pick python-kasa#1054) [\python-kasa#1057](python-kasa#1057)
- Defer module updates for less volatile modules (pick 1052) [\python-kasa#1056](python-kasa#1056)

0.7.0.3

Toggle 0.7.0.3's commit message
[Full Changelog](python-kasa/python-kasa@0.7.0.2...0.7.0.3)

Critical bugfix for issue python-kasa#1033 with ks225 and S505D light preset module errors.
Partially fixes light preset module errors with L920 and L930.

**Fixed bugs:**

Handle module errors more robustly and add query params to light preset and transition [\python-kasa#1043](python-kasa#1043)