Alex Cragg
15b0c8c0e6
Adding KP303 to supported devices ( #25 )
...
* Adding KP303(UK)_1.0.json
Adding the result file for the KP303 from kasa dump-discover
* Update readme to include KP303 as a supported device
2020-01-28 14:58:20 +01:00
Angelo Gagliano
3337c574ce
Remove unused save option and add scrubbing ( #19 )
...
* Removes unused save option and adds scrubbing
* Defaults to scrub and adds no-scrub option
* Adds latitude and longitude to the scrub list
2020-01-15 14:46:35 +01:00
Teemu R
80f097b5b3
use pytestmark to avoid repeating asyncio mark ( #24 )
2020-01-15 07:49:31 +01:00
Teemu R
72d6205ad2
Cleanup constructors by removing ioloop and protocol arguments ( #23 )
...
* Cleanup constructors by removing ioloop and protocol
* force kwarg for other arguments besides the host
2020-01-15 07:46:21 +01:00
Teemu R
7eea21f2dd
test the newly added device fixtures ( #21 )
...
* make fixture detection saner
* allow scrubbed locations
2020-01-14 19:16:30 +01:00
Teemu R
4a4b9c655a
move testing requirements to requirements_test.txt, add pytest-asyncio for azure pipelines ( #20 )
2020-01-14 18:58:39 +01:00
Angelo Gagliano
87c0dab8c8
Add real kasa device dumps ( #18 )
...
* Adds real kasa device dumps
* Adds newline to the end of the files
2020-01-14 13:34:57 +01:00
Teemu R
822ab3f8ac
Fix dump-discover to use asyncio.run ( #16 )
2020-01-13 08:52:52 +01:00
Teemu R
0f0df481a0
Add device_id property, rename context to child_id ( #15 )
...
For regular devices, device_id is the mac address and for child devices it is a combination of the mac address and the child_id.
2020-01-13 00:17:45 +01:00
Teemu R
524d28abbc
Remove sync interface, add asyncio discovery ( #14 )
...
* do not update inside __repr__
* Convert discovery to asyncio
* Use asyncio.DatagramProtocol
* Cleanup parameters, no more positional arguments
Closes #7
* Remove sync interface
* This requires #13 to be merged. Closes #12 .
* Converts cli to use asyncio.run() where needed.
* The children from smartstrips is being initialized during the first update call.
* Convert on and off commands to use asyncio.run
* conftest: do the initial update automatically for the device, cleans up tests a bit
* return subdevices alias for strip plugs, remove sync from docstrings
* Make tests pass using pytest-asyncio
* Simplify tests and use pytest-asyncio.
* Removed the emeter tests for child devices, as this information do not seem to exist (based on the dummy sysinfo data). Can be added again if needed.
* Remove sync from docstrings.
* Fix incorrect type hint
* Add type hints and some docstrings to discovery
2020-01-12 22:44:19 +01:00
Teemu R
3c68d295da
Remove --ip which was just an alias to --host ( #6 )
2020-01-12 20:29:19 +01:00
Teemu R
4a25cbfff7
Set minimum requirement to python 3.7 ( #5 )
2020-01-12 20:27:53 +01:00
Bas Nijholt
161c3eb53b
change ID of Azure Pipeline ( #3 )
2019-12-18 12:33:32 +01:00
Teemu R
3ef5086ffb
mass rename to (python-)kasa ( #1 )
2019-12-18 09:11:18 +01:00
Bas Nijholt
624c44c27f
multiply by 1000 instead of 10^3
2019-12-12 11:13:18 +01:00
Bas Nijholt
8d1e0acbba
remove Travis CI
2019-12-12 11:09:53 +01:00
Bas Nijholt
ad209de268
fix mympy's error "Decorated property not supported" (mypy bug)
...
See https://github.com/python/mypy/issues/1362
2019-12-12 10:46:40 +01:00
Bas Nijholt
122cd4c19f
run pre-commit run --all
2019-12-12 10:41:52 +01:00
Bas Nijholt
338e6ce743
add more pre-commit hooks
2019-12-12 10:41:36 +01:00
Bas Nijholt
a96af31116
replace Travis badge with Azure pipelines
2019-12-12 10:34:13 +01:00
Bas Nijholt
72d5443f1a
implement methods that depend on sys_info as properties and add update
...
In the case of smartbulb.update, light_state is also updated.
2019-11-16 17:22:37 +01:00
Bas Nijholt
8c25590186
simplify loop in __init__ in smartstrip.py
2019-11-15 16:51:01 +01:00
Bas Nijholt
b2ca20edf0
use f-strings or format
2019-11-15 16:35:42 +01:00
Bas Nijholt
e39c6dbfa2
fix pre-commit issues
2019-11-15 16:28:02 +01:00
Bas Nijholt
1779e6e122
fix bug in cli.state
2019-11-15 16:11:55 +01:00
Bas Nijholt
2976c453ac
improve doc-strings
2019-11-15 16:05:46 +01:00
Bas Nijholt
a7cb2cebed
use tox.ini in hound
2019-11-15 14:31:01 +01:00
Bas Nijholt
09d620df01
Merge remote-tracking branch 'upstream/azure_pipelines' into asyncio
2019-11-15 14:17:00 +01:00
Bas Nijholt
190a800e77
only support >= 3.6
2019-11-11 23:15:57 +01:00
Bas Nijholt
cc900ae491
tmp: comment out 2 failing tests
2019-11-11 23:10:57 +01:00
Bas Nijholt
b2973cda6c
fix the tests
2019-11-11 23:02:50 +01:00
Teemu Rytilahti
b5e585e1f8
export __version__ under the main module
2019-11-11 22:33:23 +01:00
Teemu Rytilahti
751c2445c2
add missing version.py
2019-11-11 22:30:37 +01:00
Teemu Rytilahti
8a131e1eeb
Add precommit hooks & tox env to enforce code structure, add azure pipelines
...
Instead of leveraging hound & travis, add an option for azure pipelines,
which may replace the former in the future.
This also streamlines the contributing guidelines by:
* Adding pre-commit hooks to run isort, black, flake8, mypy
* Adding lint environment to allow checks to be run `tox -e lint`
This also contains a major cleanup to the SmartStrip handling which was due.
After seeing #184 I thought I should push this in as it is for comments before the codebase diverges too much.
2019-11-11 22:14:34 +01:00
Bas Nijholt
583c785611
prefer sync attribute over asyncio.run
2019-11-11 21:06:50 +01:00
Bas Nijholt
9907c6416b
isort and black on the tests
2019-11-11 20:31:56 +01:00
Bas Nijholt
55d898b547
use absolute imports
2019-11-11 20:30:29 +01:00
Bas Nijholt
8a7d955eb7
use the "sync" attribute to call methods in the CLI
2019-11-11 20:29:18 +01:00
Bas Nijholt
e6faf9dd05
change cli.py message in according with setup.py
2019-11-11 20:29:18 +01:00
Bas Nijholt
0c1d8b6efe
implement SyncSmartDevice and sort imports and use absolute imports
2019-11-11 20:29:18 +01:00
Bas Nijholt
30677b2af0
black setup.py
2019-11-11 20:29:18 +01:00
Bas Nijholt
b2d0a511a5
define __all__ ( also gets rid of flake8 issues)
2019-11-11 20:29:18 +01:00
Bas Nijholt
533c6b5ca2
pass an ioloop
2019-11-11 19:16:55 +01:00
Bas Nijholt
7d3d105e47
remove unused imports
2019-11-11 18:19:45 +01:00
Bas Nijholt
ba2600cb93
make SmartStrip use asyncio
2019-11-11 18:19:45 +01:00
Bas Nijholt
b6a0542f43
make SmartPlug use asyncio
2019-11-11 18:19:45 +01:00
Bas Nijholt
7c69d3c03a
make SmartBulb use asyncio
2019-11-11 18:19:45 +01:00
Bas Nijholt
904bbe5c1a
make SmartDevice use asyncio
2019-11-11 18:19:45 +01:00
Bas Nijholt
af0a1d61b1
use asyncio.run in tests instead of awaiting
2019-11-11 17:03:45 +01:00
Bas Nijholt
3b27f7d7e7
use asyncio.run on coroutines in cli.py
2019-11-11 17:01:42 +01:00