Merge pull request #843 from home-assistant/next

0.27
This commit is contained in:
Robbie Trencheny 2016-08-27 20:54:53 -07:00 committed by GitHub
commit 31f1027686
96 changed files with 2315 additions and 126 deletions

View file

@ -11,16 +11,33 @@ footer: true
Home Assistant allows components and platforms to specify their dependencies and requirements using the variables `DEPENDENCIES` and `REQUIREMENTS`. Both are lists that contain strings.
## Dependencies
Dependencies are other Home Assistant components that should be setup before the platform is loaded. An example is the MQTT sensor component, which requires an active connection to an MQTT broker. If Home Assistant is unable to load and setup the MQTT component, it will not setup the MQTT sensor component.
```python
DEPENDENCIES = ['mqtt']
```
Requirements are Python libraries that you would normally install using `pip`. If Home Assistant is unable to install the requirements or verify it is installed, the component will fail to load.
## Requirements
Requirements are Python libraries that you would normally install using `pip` for your component. Home Assistant will try to install the requirements into the `deps` subdirectory of the Home Assistant configuration directory (`.home-assistant` by default) or verify it is already installed at startup. If that fails, the component will fail to load.
Requirements is a list of strings. Each entry is a pip compatible string. For example, the media player Cast platform depends on the Python package PyChromecast v0.6.12:
```python
REQUIREMENTS = ['pychromecast==0.6.12']
```
During development of a component, it can be useful to test against different versions of a requirement. This can be done in two steps, using pychromecast as an example:
* `pip install pychromecast==0.6.13 --target ~/.homeassistant/deps`
* `hass --skip-pip`
This will use the specified version, and prevent Home Assistant from trying to override it with what is currently in `REQUIREMENTS`.
If you need to make changes to a requirement to support your component, it's also possible to pip install from a checkout of the requirement.
* `git clone https://github.com/balloob/pychromecast.git`
* `pip install ./pychromecast`
* `hass --skip-pip`

View file

@ -53,6 +53,7 @@ This page contains a list of people who have contributed in one way or another t
- [coteyr](https://github.com/coteyr/)
- [Dale Higgs](https://github.com/dale3h)
- [Dan Cinnamon](https://github.com/Cinntax)
- [Dan Ford](https://github.com/dpford)
- [Daniel Høyer Iversen](https://github.com/danielhiversen)
- [Daniel J. Kemp](https://github.com/danieljkemp/)
- [Daniel Matuschek](https://github.com/usul27)
@ -62,6 +63,7 @@ This page contains a list of people who have contributed in one way or another t
- [Dan Sullivan](https://github.com/dansullivan86/)
- [Daren Lord](https://github.com/Xorso)
- [David-Leon Pohl](https://github.com/DavidLP)
- [David Straub](https://github.com/DavidMStraub)
- [Dean Camera](https://github.com/abcminiuser)
- [Dean Galvin](https://github.com/FreekingDean)
- [Dennis Karpienski](https://github.com/TheRealLink)
@ -82,7 +84,6 @@ This page contains a list of people who have contributed in one way or another t
- [GadgetReactor](https://github.com/GadgetReactor)
- [Geoff Norton](https://github.com/kangaroo)
- [goir](https://github.com/goir)
- [Kevin Gottsman](https://github.com/gottsman)
- [Greg Dowling](https://github.com/pavoni)
- [Guillem Barba](https://github.com/gbarba)
- [Gustav Ahlberg](https://github.com/Gyran)
@ -118,13 +119,16 @@ This page contains a list of people who have contributed in one way or another t
- [joopert](https://github.com/joopert)
- [Joseph Hughes](https://github.com/joshughes)
- [Joseph Piron](https://github.com/eagleamon)
- [Josh Nichols](https://github.com/technicalpickles)
- [Josh Wright](https://github.com/JshWright/)
- [Juggels](https://github.com/Juggels)
- [Julien Danjou](https://github.com/jd)
- [Justin Moy](https://github.com/justincmoy)
- [Justyn Shull](https://github.com/justyns/)
- [Karen Goode](https://github.com/kfgoode)
- [Keaton Taylor](https://github.com/keatontaylor)
- [kennedyshead](https://github.com/kennedyshead)
- [Kevin Gottsman](https://github.com/gottsman)
- [kireyeu](https://github.com/kireyeu)
- [kixam](https://github.com/kixam)
- [Kyle Hendricks](https://github.com/kylehendricks)
@ -139,7 +143,9 @@ This page contains a list of people who have contributed in one way or another t
- [Markus Stenberg](https://github.com/fingon)
- [Martin Hjelmare](https://github.com/MartinHjelmare)
- [Matteo Lampugnani](https://github.com/t30)
- [Matthew Bowen](https://github.com/mgbowen)
- [Matthew Treinish](https://github.com/mtreinish)
- [Matthias Grawinkel](https://github.com/meatz)
- [Michaël Arnauts](https://github.com/michaelarnauts)
- [Michael Gilbert](https://github.com/Zyell)
- [Michael Kutý](https://github.com/michaelkuty)
@ -153,6 +159,7 @@ This page contains a list of people who have contributed in one way or another t
- [Nicolas Graziano](https://github.com/ngraziano)
- [Nils Uliczka](https://github.com/darookee)
- [Nolan Gilley](https://github.com/nkgilley)
- [Nuno Sousa](https://github.com/nunofgs)
- [Oliver van Porten](https://github.com/mcdeck)
- [open-homeautomation](https://github.com/open-homeautomation)
- [Øystein Hansen](https://github.com/oeysteinhansen)
@ -168,6 +175,7 @@ This page contains a list of people who have contributed in one way or another t
- [rkabadi](https://github.com/rkabadi)
- [Robbie Trencheny](https://github.com/robbiet480)
- [Rob Olimpiu](https://github.com/olimpiurob)
- [Roi Dayan](https://github.com/roidayan)
- [Rowan Hine](https://github.com/GreenTurtwig)
- [rubund](https://github.com/rubund)
- [Ryan Kraus](https://github.com/rmkraus)
@ -186,6 +194,7 @@ This page contains a list of people who have contributed in one way or another t
- [Theodor Lindquist](https://github.com/theolind)
- [tilutza](https://github.com/tilutza)
- [Tim Harton](https://github.com/timharton)
- [Tobie Booth](https://github.com/tobiebooth)
- [toddeye](https://github.com/toddeye)
- [Tom Duijf](https://github.com/tomduijf)
- [trollkarlen](https://github.com/trollkarlen)