Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0.43 #7197

Merged
merged 150 commits into from
Apr 22, 2017
Merged

0.43 #7197

merged 150 commits into from
Apr 22, 2017

Conversation

balloob
Copy link
Member

@balloob balloob commented Apr 21, 2017

Oooh yeah. It's time for 0.43 and this is going to be a killer release. For the people that have been following on social media, you might have noticed that we got pretty excited about the new IKEA Tradfri line up. And so we are very happy to announce that thanks to the work by @ggravlingen, @MartinHjelmare and myself that this will be the first release to support the IKEA light bulbs. Home Assistant will automatically detect the gateway on your network and after following the instructions, allow you to control your lights.

discovery-1

And in case you have missed the other big news: @robbiet480 released the first version of our iOS app! It took a little over a year but it offers some great ways to make your iDevice work with Home Assistant. Big congrats to Robbie for shipping! As with our other parts, the app is open-sourced under APACHE 2 and contributors are welcome. Check it out.

A big shout out this release to @happyleavesaoc for his constant stream of great contributions to Home Assistant. The first contribution was back in October 2015 and since then @happyleavesaoc has been responsible for many platforms and bug fixes including the Spotify platform this release. Thanks @happyleavesaoc, you're a great example of what makes our community awesome.

The new Spotify integration is based on the new Spotify Connect Playback API. It supports playback, album art and switching which Spotify device you're controlling.

New Platforms

Breaking changes

telegram_bot:
    platform: webhooks
    api_key : api_key_here
    allowed_chat_ids : 
        - 123456
        - 456789
sensor:
  - platform: mvglive
    nextdeparture:
     - station: Hauptbahnhof
       name: Hbf
       destinations: ['München Flughafen Terminal','Markt Schwaben']
       products: 'S-Bahn'
       timeoffset: 2
     - station: Sendlinger Tor
       lines: ['U2','U8']
     - station: Scheidplatz
       products: ['U-Bahn']
       directions: '1'

All changes

JesseWebDotCom and others added 30 commits March 31, 2017 22:19
Exposed more attributes, enabled play_media tv show or season episodes
* Fix current_temperature is rounded

* fix  Unnecessary parens after 'if'
* Bugfix time and task coro

* fix also other create_task

* fix tests

* fix lint in test
* Initial import for HassIO

* Cleanup api code for views

* First unittest for view

* Add test for edit view

* Finish unittest

* fix addons test

* cleanup service.yaml

* Address first round with ping command

* handle timeout dynamic

* fix lint
* Preserve customize glob order.

* add tests
…ge to avoid python exception errors when host is not reachable or rather any url error to camera (#6964)

* Adding exception handling when fetching the camera image to avoid python errors when host is not reachable or any url errors to camera

* Added exception as ConnectionError instead of plain except

* Added exception as ConnectionError instead of plain except. Removed the unused error handle
* add crimereports

* add crimereports metadata

* implicit interval

* remove zone support
* Added dawn, dusk, noon and midnight to the Sun component

* Created a helper method for the solar events
* Initial tests for zwave services

* Fix linter issues

* Complete zwave service tests
…ort for plugs using the newer communication protocol (#6979)
* Add tests for ZWaveDeviceEntityValues helper

* Add remaining coverage
Fixed traceback when calculating SD card percent storage

   self._state = self._camera.percent(sd_used[0], sd_total[0])
AttributeError: 'Http' object has no attribute 'percent'
* Warn if start takes a long time.

* ps - cleanup

* Tweak message

* Add tests

* Tweak messagE
* Make discovery not block start

* Fix tests
Add an optional extended description…
soldag and others added 9 commits April 19, 2017 23:32
* Added light.pwm component.

* Renamed pwm platform to rpi_gpio_pwm.

* Update requirements_all.txt
* fix for missing image preview on LG webos TV

* fix to use largeIcon if it start with http
This should fix the "dancing media player" issue where the media player
requests artwork when it's not really available, making the UI "dance".
* Refactored mvglive.py

This pull requests builds on the first work with the mvglive sensor:
- Refactoring the code so that multiple sensors for departures can be added
- Rewrites the transport mode restrictions ("products") to be more modular
- Fixes bugs, such as missing implementation of line restriction
- Other improvements, such as including data attribution

* Further improvements to mvglive sensor

- The API returns the property 'direction', which can be used to filter U-Bahn trains by direction without having to enter all final destinations
- The sensor icon now corresponds to the mode of transport of the next departure

* UBahnDirection refactored

U-Bahn SEV (bus replacement services) have unexpected direction values, fixed resulting bug and hound issues
* Add support of input registers while querying modbus sensor.

* Changed config option. Refactoring.
* Add HassIO to autodiscovery

* Fix tests

* fix tests

* fix test v2

* fix mock test

* call
@mention-bot
Copy link

@balloob, thanks for your PR! By analyzing the history of the files in this pull request, we identified @fabaff, @scipioni and @rmkraus to be potential reviewers.

* Refactor into find_hsbk

This will be useful for new methods that also have to find passed in colors.

* Add AwaitAioLIFX

This encapsulates the callback and Event that aiolifx needs and thus avoids an
explosion of those when new calls are added.

The refresh_state is now generally useful, so move it into its own method.

* Initial effects support for LIFX

These effects are useful as notifications. They mimic the breathe and pulse
effects from the LIFX HTTP API:

    https://api.developer.lifx.com/docs/breathe-effect
    https://api.developer.lifx.com/docs/pulse-effect

However, this implementation runs locally with the LIFX LAN protocol.

* Saturate LIFX no color value

Now the color is "full saturation, no brightness". This avoids a lot of
temporary white when fading from the "no color" value and into a real color.

* Organize LIFX effects in classes

This is to move the setup/restore away from the actual effect, making it quite
simple to add additional effects.

* Stop running LIFX effects on conflicting service calls

Turning the light on/off or starting a new effect will now stop the running
effect.

* Present default LIFX effects as light.turn_on effects

This makes the effects (with default parameters) easily accessible from
the UI.

* Add LIFX colorloop effect

This cycles the HSV colors, so that is added as an internal way to set a
color.

* Move lifx to its own package and split effects into a separate file

* Always show LIFX light name in logs

The name is actually the easiest way to identify a bulb so just using it
as a fallback was a bit odd.

* Compact effect getter

* Always use full brightness for random flash color

This is a stopgap. When a bit more infrastructure is in place, the intention
is to turn the current hue some degrees. This will guarantee a flash color
that is both unlike the current color and unlike white.

* Clear effects concurrently

We have to wait for the bulbs, so let us wait for all of them at once.

* Add lifx_effect_stop

The colorloop effect is most impressive if run on many lights. Testing
this has revealed the need for an easy way to stop effects on all lights
and return to the initial state of each bulb. This new call does just that.

Calling turn_on/turn_off could also stop the effect but that would not
restore the initial state.

* Always calculate the initial effect color

To fade nicely from power off, the breathe effect needs to keep an
unchanging hue. So give up on using a static start color and just find the
correct hue from the target color.

The colorloop effect can start from anything but we use a random color
just to keep things a little interesting during power on.

* Fix lint

* Update .coveragerc
Add an optional extended description…
@MrMep
Copy link
Contributor

MrMep commented Apr 21, 2017

Yeee, thanks!
@balloob, isn't JSON MQTT Device tracker a new platform?

gl

@balloob
Copy link
Member Author

balloob commented Apr 21, 2017

You're right it is. It didn't get the label initially because the initial version of the PR was not a new platform. Corrected it.

@robbiet480
Copy link
Member

Didn't Crime Reports get added in last version? It's on the second line of new features: Crime Reports sensor (@happyleavesaoc - #6966) (new-platform)

amelchio and others added 2 commits April 21, 2017 20:18
* Update ios.py

as discussed. the part: 
       if battery_state == ios.ATTR_BATTERY_STATE_FULL:
            returning_icon_level = DEFAULT_ICON_LEVEL
kinda screws up the charging icon.

i might just miss a logical solution for that though.
let me know what you think. it might not be beautiful but i think its an overall improve over the current "double battery" solution

* Update ios.py

chound fix and full_battery_charge fix

* Update ios.py

removed new line

* Update ios.py

* Update ios.py

* Update ios.py

* Update ios.py

* Update ios.py

* Update ios.py

* merged request from robbie

* Update ios.py

* Update ios.py

* Update ios.py
sdague and others added 2 commits April 21, 2017 20:22
The arwn platform was refactored to be asyncio friendly, however in
doing so one thing was missed which was explicitly telling hass when
something interesting has happened. This led to the very interesting
to debug issue that the state cards were all out of date, even though
the graphs were not.
…#7199)

* updated pylgtv module to fix problems with timeouts

* - update pylgtv to 0.1.6
- handle new TimeoutError exception from pylgtv

* used full name for exception handling of concurrent.futures._base.TimeoutError

* the exception handling should now follow the rules

* float typecasting should not be necessary

* use asyncio for TimeoutError it’s an alias for concurrent.futures.TimeoutError
MartinHjelmare and others added 2 commits April 22, 2017 00:31
* Remove leftover use of slugify

* The IKEA manufacturer key is now exactly as found in device info.

* Fix bitwise addition of supported features
@balloob balloob merged commit 8be2ac7 into master Apr 22, 2017
@balloob balloob deleted the release-0-43 branch April 29, 2017 21:40
@home-assistant home-assistant locked and limited conversation to collaborators Aug 12, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.