0.57: Translations, Hacktoberfest, Timers

The Home Assistant sidebar in 12 different languages Home Assistant 侧边栏的 12 种语言版本。

大家好啊?! 在虚拟的 Home Assistant 总部,这又是疯狂的两周,来自世界各地的大量优秀贡献纷至沓来。新功能、Bug 修复、性能提升,应有尽有。内容很多,我们直接开始吧。

翻译

如果你还没从上面的截图里看出来,第一个重磅功能就是:我们现在可以翻译 UI 了!目前翻译范围还只限于侧边栏菜单项。即使当时还没有正式的翻译工具,贡献者们也已经迅速投入,提交了二十多种语言的菜单翻译!Home Assistant 会根据你的浏览器设置自动选择可用翻译,也可以在配置面板里手动切换语言。

我们目前正在把基于 Web 的翻译工具 lokalise.co 集成进来,让任何愿意贡献的人都能方便参与翻译。更多文档和博客文章很快就会发布,敬请期待。

前端改进

为了让翻译功能顺利运作,我们在前端侧做了大量清理工作。这次重组将帮助我们更快地迭代前端。@armills 和 @andrey-git 持续推动质量提升,也让这轮清理工作成果显著!

Hacktoberfest

Hacktoberfest 2017 终于结束了!总算告一段落。每年都会有更多开发者想为 Home Assistant 做贡献,这当然是好事,但也让代码评审者们非常辛苦。我要特别向 @pvizeli、@andrey-git、@armills、@MartinHjelmare、@fabaff 致以超级巨大的感谢。你们做得太棒了,没有你们就没有 Home Assistant! ❤

Hacktoberfest 说到底,就是属于所有为开源做贡献的人。非常感谢每一位愿意花时间了解我们代码库并提交贡献的朋友。希望这次经历让你感受到开源的魅力,也期待未来继续看到你们的贡献 👍

下面是我们的 Hacktoberfest 2017 数据统计。大家居然都还活着,简直是个奇迹:

这意味着我们平均每天处理超过 20 个 Pull Request。0.56 中已经能看到成果,而这次发布也差不多。仅这几次发布中,我们就加入了 40 多个新集成。

IKEA TRÅDFRI

关于 IKEA TRADFRI,这里有好消息也有坏消息。坏消息是,IKEA 在一次固件更新中修改了内部 API,导致 Home Assistant 集成失效。好消息是,他们非常友善地给我们发了邮件,说明这些不向后兼容的变更

长期贡献者 @lwis 迅速接手处理,并及时完成了 Home Assistant 中该集成的迁移,赶上了这次发布。干得漂亮!

Pumpkin with Home Assistant logo carved in. @clhett01 给我们刻了一只南瓜([来自 Twitter](https://twitter.com/clhett01/status/925481848612032512))

计时器

在你开始查看更新日志之前,再来看一个亮点。贡献者 @danielperna84(因创建 HASS Configurator 而广为人知)这次又带来了一个很棒的新组件:计时器组件。借助它,你可以启动倒计时计时器,是自动化工具箱里非常实用的一件工具!更多信息请查看 timer docs

新平台

release 0.57.1 - november 4

  • Fix login screen not showing when no password stored (@balloob)

release 0.57.2 - november 5

  • Update frontend with fixes for setting temperature on climate card (@balloob)
  • Fix setting max brightness for TRADFRI (@ggravlingen - #10359)

release 0.57.3 - november 11

如果你需要帮助……

……欢迎使用我们非常活跃的论坛,或者加入我们的聊天频道。虽然发布说明开放了评论,但我们更推荐你使用前面的社区交流渠道。谢谢。

反馈问题

如果你遇到了此次发布引入的问题,请在我们的 issue tracker 中反馈。请确保完整填写 issue 模板中的所有字段。

不向后兼容的变更

  • IKEA TRÅDFRI: We no longer support entering the key in the configuration. (@lwis - #10282) (tradfri docs) (breaking change)

  • API.AI was renamed to Dialogflow. This requires to rename the entry in your configuration.yaml file from apiai: to dialogflow. (@fabaff - #10006) (dialogflow docs) (breaking change)

  • Wink: Removed support for entering your username and password in your config. Use the new authentication method instead. (@w1ll1am23 - #10277) (wink docs) (breaking change)

  • Use feed name assigned in EmonCMS if there is one. This changes the default behavior but still uses configured 'name' if it's set, so it won't break the configuration of people who have customized their feed names in HA config. (@KlaasH - #10021) (传感器.emoncms docs) (breaking change)

  • The namecheapdns now uses password: instead of access_token in the configuration. Also, host is now optional which allow people who are not using subdomains to keep their configuration shorter. (@fabaff - #10063) (namecheapdns docs) (breaking change)

  • Fix recorder crash for long state string - enforce a maximum state of 255 characters at core level (@milanvo - #9696) (breaking change)

  • Add display currency setting to CoinMarketCap 传感器. The name of the sensor attribute '24h_volume_usd' is changed to '24h_volume'. (@EarthlingRich - #10093) (传感器.coinmarketcap docs) (breaking change)

  • MQTT Statestream now serializes all data to JSON before publishing. This means that string attributes and values will be quoted from now on (e.g.: '"on"' instead of 'on'). You can still read these strings without the quotes by using 'value_json' instead of 'value' where applicable (e.g., templates). This causes automatic JSON deserialization. Other simple types are not affected.

    This fixes errors when an entity has an attribute that is not "a string, bytearray, int, float or None" and mqtt_statestream is used. As of now, the attribute is just handed over to paho, and paho can only send the aforementioned types. This patch fixes the issue by just casting everything to string before handing it over to paho.

    There are a number of components / entities which have "other" attributes, e.g., light that have an RGB attribute which is a list. (@tinloaf - #9872) (mqtt_statestream docs) (breaking change)

  • Generic thermostat: the configuration option tolerance has been removed and has been replaced by cold_tolerance and hot_tolerance. This allows on and off states to have different error bands. (@biggms - #9843) (温控.generic_thermostat docs) (breaking change)

  • Developers only: frontend has been refactored. The method register_panel has been turned into a coroutine function called async_register_panel. The parameter url_path has been renamed to frontend_url_path. For frontend, development, you no longer pass development: 1 to the http component but instead configure the frontend component to be in development mode by pointing it at a local checkout of the Polymer repo: (@balloob - #9915) (breaking change)

全部变更