Will not contain minor changes -- feel free to look through git log
for
more detail.
- Support new GetBinaryState command (fixes n8henrie#31)
- Add
--version
to cli - Add
python_requires
specifier tosetup.py
- Bind to specific address in
make_udp_sock
(fauxmo.utils
), seems to fix some intermittent failing tests on MacOS.
- Add additional linters to tests
- Set reuseaddr and reuseport before binding socket
- Rename handlers to plugins
- Add interface for user plugins
- Add type hints
- Require Python 3.6
- Eliminate third party dependencies
- Make sure to close connection when plugin commands fail / return False
- Added compatibility for
rollershutter
tohandlers.hass
- Changed
handlers.hass
to send values from a dict to make addition of new services easier in the future
- Update SSDPServer to
setsockopt
to permit receiving multicast broadcasts sock
kwarg tocreate_datagram_endpoint
no longer necessary, restoring functionality to Python 3.4.0 - 3.4.3 (closes #6)make_udp_sock()
no longer necessary, removed fromfauxmo.utils
- Tox and Travis configs switched to use Python 3.4.2 instead of 3.4.4 (since 3.4.2 is the latest available in the default Raspbian Jessie repos)
- Don't decode the UDP multicast broadcasts (hopefully fixes #7)
- They might not be from the Echo and might cause a
UnicodeDecodeError
- Just search the bytes instead
- They might not be from the Echo and might cause a
- Tests updated for this minor change
- Fauxmo now uses asyncio and requires Python >= 3.4.4
- Extensive changes to codebase
- Handler classes renamed for PEP8 (capitalization)
- Moved some general purpose functions to
fauxmo.utils
module - Both the UDP and TCP servers are now in
fauxmo.protocols
- Added some rudimentary pytest tests including tox and Travis support
- Updated documentation on several classes
- Add additional HTTP verbs and options to
RestApiHandler
and Indigo sample to config- NB: Breaking change:
json
config variable now needs to be eitheron_json
oroff_json
- NB: Breaking change:
- Make
RestApiHandler
DRYer withfunctools.partialmethod
- Add
SO_REUSEPORT
toupnp.py
to make life easier on OS X
- Consolidate logger to
__init__.py
and import from there in other modules
- Add the ability to manually specify the host IP address for cases when the auto detection isn't working (n8henrie#1)
- Deprecated the
DEBUG
setting inconfig.json
. Just use-vvv
from now on.
- Fix for Linux not returning local IP
- restored method I had removed from Maker Musings original / pre-fork version not knowing it would introduce a bug where Linux returned 127.0.1.1 as local IP address
- Fix default verbosity bug introduced in 1.1.3
- Continue to convert to python3 code
- Pulled in a few PRs by @DoWhileGeek working towards python3 compatibility and improved devices naming with dictionary
- Renamed a fair number of classes
- Added kwargs to several class and function calls for clarity
- Renamed several variables for clarity
- Got rid of a few empty methods
- Import devices from
config.json
and include a sample - Support
POST
, headers, and json data in the RestApiHandler - Change old debug function to use logging module
- Got rid of some unused dependencies
- Moved license (MIT) info to LICENSE
- Added argparse for future console scripts entry point
- Added Home Assistant API handler class
- Use "string".format() instead of percent
- Lots of other minor refactoring