mirror of
https://github.com/esphome/esphome-docs.git
synced 2024-12-26 17:27:47 +01:00
Redirects
This commit is contained in:
parent
893cde6959
commit
4188e4a906
@ -1,301 +1,12 @@
|
|||||||
Changelog - Version 1.9.0
|
Changelog
|
||||||
=========================
|
=========
|
||||||
|
|
||||||
.. seo::
|
.. redirect::
|
||||||
:description: Changelog for esphomelib version 1.9.0.
|
:url: /esphomeyaml/changelog/v1.10.0.html
|
||||||
:image: /_static/_changelog-1.9.0.png
|
|
||||||
:author: Otto Winter
|
|
||||||
:author_twitter: @OttoWinter_
|
|
||||||
|
|
||||||
.. imgtable::
|
|
||||||
|
|
||||||
Beta Releases, guides/faq.html#how-do-i-update-to-the-latest-beta-release, new-box.svg
|
|
||||||
Text Sensors, components/text_sensor/index, folder-open.svg
|
|
||||||
MQTT Subscribe, components/sensor/mqtt_subscribe, mqtt.png
|
|
||||||
|
|
||||||
Stepper, components/stepper/index, stepper.svg
|
|
||||||
CSE7766, components/sensor/cse7766, cse7766.svg
|
|
||||||
PMSX003, components/sensor/pmsx003, pmsx003.svg
|
|
||||||
|
|
||||||
esphomeflasher, guides/faq.html#i-can-t-get-flashing-over-usb-to-work, logo.svg
|
|
||||||
Total Daily Energy, components/sensor/total_daily_energy, sigma.svg
|
|
||||||
MY9231/MY9291 LED driver, components/my9231, my9231.svg
|
|
||||||
|
|
||||||
|
|
||||||
It's time for another release of esphomelib: 1.9.0. This release is quite different from the last one,
|
|
||||||
it doesn't focus that much on new integrations with a "modest" amount of 7 new integrations. No, most of the
|
|
||||||
development has been focused on improving the core architecture and making the esphomelib ecosystem easier to use.
|
|
||||||
Because that's my main goal of this project: Providing a great user-experience so that you can focus on building
|
|
||||||
awesome things with DIY hardware!
|
|
||||||
|
|
||||||
The features I'm particularly excited about are:
|
|
||||||
|
|
||||||
* :ref:`esphomeflasher <esphomeflasher>` - Experiencing problems flashing esphomelib firmwares using esphomeyaml?
|
|
||||||
No problem, esphomeflasher is a tool designed to make that super easy. Just let esphomeyaml generate the binary and flash
|
|
||||||
from your PC.
|
|
||||||
* :doc:`Over-the-Air Updates </esphomeyaml/components/ota>` have been completely re-written to make them a lot more
|
|
||||||
stable.
|
|
||||||
* A lot of work has been put in to provide more context in YAML validation errors. Sometimes, esphomeyaml will even
|
|
||||||
try to give you suggestions for how to fix a validation error!
|
|
||||||
* A new release cycle: esphomeyaml now also has a :ref:`beta release channel <faq-beta>` kind of like Home Assistant. This helps to
|
|
||||||
iron out the most important bugs before each stable release
|
|
||||||
* And of course, lots of stability improvements and bug fixes :)
|
|
||||||
|
|
||||||
Thank you very much to everybody who contributed to this release with new code or by
|
|
||||||
:ref:`reporting bugs <faq-bug_report>`!
|
|
||||||
|
|
||||||
New Components
|
|
||||||
--------------
|
|
||||||
|
|
||||||
- There's a new base component called :doc:`text sensors </esphomeyaml/components/text_sensor/index>` for using
|
|
||||||
text-based inputs, not just numbers like the generic :doc:`sensors </esphomeyaml/components/sensor/index>` did
|
|
||||||
(:yamlpr:`166`, :docspr:`52`)
|
|
||||||
|
|
||||||
- The new MQTT Subscribe Sensors allow you to get external data into esphomelib's ecosystem via MQTT
|
|
||||||
(:libpr:`193`, :yamlpr:`175`, :docspr:`50`)
|
|
||||||
|
|
||||||
- Added :doc:`CSE7766 Power Sensor </esphomeyaml/components/sensor/cse7766>` to support power measurements
|
|
||||||
on the Sonoff Pow R2 (:libpr:`277`, :yamlpr:`190`, :docspr:`59`)
|
|
||||||
|
|
||||||
- Thanks to :ghuser:`puuu`, the LED driver in the Sonoff B1 (MY9231) is now supported!
|
|
||||||
(:libpr:`266`, :yamlpr:`227`, :docspr:`80`)
|
|
||||||
|
|
||||||
- Added the :doc:`PMSX003 Particulate Matter Sensor </esphomeyaml/components/sensor/pmsx003>`
|
|
||||||
(:libpr:`229`, :yamlpr:`192`, :docspr:`58`)
|
|
||||||
|
|
||||||
- Added support for :doc:`A4988 Stepper Motors </esphomeyaml/components/stepper/index>` (:libpr:`239`,
|
|
||||||
:yamlpr:`206`, :docspr:`68`)
|
|
||||||
|
|
||||||
- Added :doc:`total daily energy sensor </esphomeyaml/components/sensor/total_daily_energy>` to accumulate the total
|
|
||||||
power usage over one day (:libpr:`256`, :yamlpr:`220`)
|
|
||||||
|
|
||||||
New Features
|
|
||||||
------------
|
|
||||||
|
|
||||||
- Compiling for ESP32s is now possible on RPis 🎉
|
|
||||||
|
|
||||||
- esphomelib now has a new tool: `esphomeflasher <https://github.com/OttoWinter/esphomeflasher>`__ to simplify
|
|
||||||
flashing on Windows/MacOS machines **without having to install esphomeyaml**. So if esphomeyaml for some reason
|
|
||||||
can't find your USB port, you now can use the esphomeflasher app. See :ref:`esphomeflasher`.
|
|
||||||
|
|
||||||
- ESP8266s now save the states of lights/switches/... internally and restores them on boot.
|
|
||||||
Additionally, esphomelib can now operate in fully offline mode if your WiFi network goes down
|
|
||||||
or the MQTT broker is unreachable, see :ref:`automation-networkless`
|
|
||||||
(:libpr:`258`, :libpr:`267`, :yamlpr:`229`)
|
|
||||||
|
|
||||||
- The :doc:`Over-the-Air Update </esphomeyaml/components/ota>` process was quite buggy sometimes and the Arduino-library
|
|
||||||
esphomelib used was doing some weird stuff. The OTA-process has now been completely re-written to be more stable
|
|
||||||
(:libpr:`204`, :yamlpr:`177`).
|
|
||||||
|
|
||||||
- Add support for the Home Assistant device registry. If you're using `Home Assistant 0.81.0 <https://www.home-assistant.io/blog/2018/10/26/release-81/>`__
|
|
||||||
or higher you will see a list of all components for each esphomelib node in the integrations screen
|
|
||||||
(:libpr:`233`).
|
|
||||||
|
|
||||||
- The current esphomelib version and compilation time are no printed on each boot
|
|
||||||
(:libpr:`189`, :yamlpr:`159`):
|
|
||||||
|
|
||||||
.. code:: bash
|
|
||||||
|
|
||||||
[13:57:33][I][application:092]: You're running esphomelib v1.9.0 compiled on Nov 3 2018, 13:55:11
|
|
||||||
|
|
||||||
- Stack traces in the USB logs are now automatically decoded to make debugging easier
|
|
||||||
(:yamlpr:`214`)
|
|
||||||
|
|
||||||
- Added :ref:`mqtt-on_json_message` and :ref:`mqtt-publish_json_action` to make using JSON for MQTT payloads easier
|
|
||||||
(:libpr:`230`, :yamlpr:`193`, :docspr:`60`)
|
|
||||||
|
|
||||||
- The remote (IR) components have received support for Samsung's IR protocol
|
|
||||||
(:yamlpr:`176`, :docspr:`48`)
|
|
||||||
|
|
||||||
- Added :ref:`component-update_action`, :ref:`logger-log_action` and :ref:`script-execute_action` for simplifying
|
|
||||||
automations
|
|
||||||
(:libpr:`232`, :yamlpr:`196`, :yamlpr:`198`, :docspr:`61`, :docspr:`63`)
|
|
||||||
|
|
||||||
- Added :ref:`binary_sensor-on_multi_click` trigger to distinguish between double, long, and single clicks.
|
|
||||||
(:libpr:`262`, :docspr:`77`, :yamlpr:`226`)
|
|
||||||
|
|
||||||
- Added an :ref:`pn532-on_tag` to :doc:`PN532 NFC Readers </esphomeyaml/components/pn532>` so that automations
|
|
||||||
can directly use the NFC tag ID
|
|
||||||
(:libpr:`194`, :yamlpr:`189`, :docspr:`57`)
|
|
||||||
|
|
||||||
- Added a ``hass-config`` command which generates a Home Assistant configuration for your esphomeyaml nodes.
|
|
||||||
Useful if you're not using MQTT discovery (:yamlpr:`208`)
|
|
||||||
|
|
||||||
- All documentation pages now have comment systems powered by `disqus <https://disqus.com/>`__
|
|
||||||
(:docspr:`47`)
|
|
||||||
|
|
||||||
- You now have to option to have a different log level for log messages sent over MQTT (:ref:`docs <mqtt-message>`,
|
|
||||||
:yamlpr:`167`, :docspr:`51`)
|
|
||||||
|
|
||||||
- Added a color correction option to :doc:`FastLED addressable lights </esphomeyaml/components/light/fastled_clockless>`
|
|
||||||
(:libpr:`234`, :yamlpr:`200`, :docspr:`64`)
|
|
||||||
|
|
||||||
- Added a ``clean`` command to esphomeyaml to fix some occasional build errors
|
|
||||||
(:yamlpr:`181`)
|
|
||||||
|
|
||||||
- Added a ``send_first_at`` option to sliding window moving average sensor filters
|
|
||||||
(:libpr:`240`, :yamlpr:`207`, :docspr:`69`)
|
|
||||||
|
|
||||||
- You can now upload OTA firmware files with the :doc:`web server component </esphomeyaml/components/web_server>`
|
|
||||||
|
|
||||||
- Added the ability to define global variables in esphomeyaml: :ref:`config-globals`.
|
|
||||||
|
|
||||||
- Added a ``frequency`` option to the :doc:`/esphomeyaml/components/output/esp8266_pwm`.
|
|
||||||
|
|
||||||
Breaking Changes
|
|
||||||
----------------
|
|
||||||
|
|
||||||
- As part of the rewrite of Over-The-Air updates, the old OTA protocol is incompatible with the new one -
|
|
||||||
But fear not, esphomeyaml still supports the legacy OTA update process. On your first OTA upload with 1.9.0, you will
|
|
||||||
see esphomeyaml try with the new OTA method and fail. After that, esphomeyaml will fall back to the old OTA
|
|
||||||
process and upload correctly (:libpr:`204`).
|
|
||||||
|
|
||||||
- esphomelib's naming convention has been made more consistent. If you're not using any :ref:`lambdas <config-lambda>`,
|
|
||||||
everything will still work. However, if you're using the C++ API, there are a couple of breaking changes:
|
|
||||||
|
|
||||||
For sensors and binary sensors, ``id(my_sensor).value`` has been deprecated and ``id(my_sensor).state`` should be used
|
|
||||||
instead. Additionally, the syntax for toggling lights and switches through C++ has been changed. Please see
|
|
||||||
the :docspr:`62` changeset for more information
|
|
||||||
(:libpr:`231`, :docspr:`62`, :yamlpr:`197`)
|
|
||||||
|
|
||||||
All changes
|
|
||||||
-----------
|
|
||||||
|
|
||||||
- docs: Clarify ESP32 BLE Tracker comment :docspr:`42`
|
|
||||||
- yaml: Add a link to Home Assistant in README :yamlpr:`152` by :ghuser:`jonnyair`
|
|
||||||
- lib: Add a link to Home Assistant in README.md :libpr:`184` by :ghuser:`jonnyair`
|
|
||||||
- docs: Fix time docs 12-hour clock strftime format :docspr:`43`
|
|
||||||
- lib: Fix ESP32 BLE Presence detection always on :libpr:`185`
|
|
||||||
- lib: Fix LCD display include :libpr:`186`
|
|
||||||
- lib: Fix template switch spamming output :libpr:`187`
|
|
||||||
- lib: Fix using HTU21D for SI7021 :libpr:`188`
|
|
||||||
- lib: Fix components sending invalid state on startup if integration not ready yet :libpr:`195`
|
|
||||||
- lib: Log esphomelib version and compilation time on boot :libpr:`189` (new-feature)
|
|
||||||
- yaml: Log esphomelib version and compilation time on boot :yamlpr:`159` (new-feature)
|
|
||||||
- yaml: Fix raw remote receiver :yamlpr:`158`
|
|
||||||
- lib: Add Code of Conduct (Contributor Covenant) :libpr:`196`
|
|
||||||
- lib: Create CONTRIBUTING.md :libpr:`197`
|
|
||||||
- lib: Create issue templates :libpr:`198`
|
|
||||||
- lib: Create pull request template :libpr:`199`
|
|
||||||
- yaml: Create Pull Request Template :yamlpr:`172`
|
|
||||||
- yaml: Create CONTRIBUTING.md :yamlpr:`169`
|
|
||||||
- yaml: Add Code of Conduct (Contributor Covenant) :yamlpr:`168`
|
|
||||||
- yaml: Create issue templates :yamlpr:`171`
|
|
||||||
- docs: Add Code of Conduct (Contributor Covenant) :docspr:`44`
|
|
||||||
- docs: Create Pull Request Template :docspr:`45`
|
|
||||||
- yaml: Fix readme broken link :yamlpr:`174`
|
|
||||||
- lib: Fix pulse counter counting inverted on ESP8266 :libpr:`200`
|
|
||||||
- yaml: Add use_build_flags removal notice :yamlpr:`173`
|
|
||||||
- docs: Highlight update_interval gotchas :docspr:`46`
|
|
||||||
- docs: Add Disqus and cleanup :docspr:`47` (new-feature)
|
|
||||||
- lib: Fix PN532 not logging discovered tags :libpr:`202`
|
|
||||||
- yaml: Add Samsung IR protocol :yamlpr:`176` by :ghuser:`escoand` (new-feature)
|
|
||||||
- docs: add samsung ir protocol :docspr:`48` by :ghuser:`escoand` (new-feature)
|
|
||||||
- lib: Bump FastLED to 3.2.0 :libpr:`203`
|
|
||||||
- yaml: Fix Wifi power_save_mode option :yamlpr:`178`
|
|
||||||
- lib: Fix application sort order :libpr:`211`
|
|
||||||
- docs: Improve pulse counter docs :docspr:`49`
|
|
||||||
- lib: Fix ESP32 BLE Controller Init :libpr:`213`
|
|
||||||
- lib: Fix Web Server Creating Infinite Print Loop :libpr:`214`
|
|
||||||
- lib: Add TOGGLE payload to more components :libpr:`212` (new-feature)
|
|
||||||
- lib: ESP8266 Pulse Counter Improve Timing :libpr:`205`
|
|
||||||
- lib: Add MQTT Subscribe Sensor :libpr:`193` (new-feature)
|
|
||||||
- docs: Add MQTT Subscribe sensor :docspr:`50` (new-feature)
|
|
||||||
- yaml: Add MQTT Subscribe sensor :yamlpr:`175` (new-feature)
|
|
||||||
- yaml: MQTT different log level :yamlpr:`167` (new-feature)
|
|
||||||
- docs: Add option to have different log level over MQTT :docspr:`51` (new-feature)
|
|
||||||
- yaml: Add clean build files command and auto-clean on version change :yamlpr:`181` (new-feature)
|
|
||||||
- lib: Add power on value to switch :libpr:`207` (new-feature)
|
|
||||||
- lib: Rework OTA to be more stable :libpr:`204` (breaking-change) (new-feature)
|
|
||||||
- yaml: Rework OTA to be more stable :yamlpr:`177` (new-feature)
|
|
||||||
- lib: Fix WiFi not working when GPIO 0 connected :libpr:`215`
|
|
||||||
- lib: Fix MiFlora illuminance reading :libpr:`220`
|
|
||||||
- lib: Remove invalid file headers :libpr:`219`
|
|
||||||
- yaml: Fix config dump time output :yamlpr:`184`
|
|
||||||
- lib: GPIO Switch Rewrite :libpr:`217`
|
|
||||||
- docs: Add power on value to GPIO Switch :docspr:`55` (new-feature)
|
|
||||||
- yaml: Decentralize Automation Generator Code :yamlpr:`182`
|
|
||||||
- lib: Add PN532 On Tag Trigger :libpr:`226` (new-feature)
|
|
||||||
- lib: Add text sensors :libpr:`194` (new-feature)
|
|
||||||
- docs: Add Text sensors :docspr:`52` (new-feature)
|
|
||||||
- lib: Fix PCF8574 assert. :libpr:`223` by :ghuser:`lobradov`
|
|
||||||
- lib: Unify Xiaomi MiJia&MiFlora Implementations :libpr:`225`
|
|
||||||
- docs: Unify xiaomi implementations :docspr:`56`
|
|
||||||
- yaml: Unify Xiaomi implementations :yamlpr:`188`
|
|
||||||
- lib: Add CSE7766 for Sonoff Pow R2 :libpr:`227` (new-feature)
|
|
||||||
- docs: Add CSE7766 for Sonoff Pow R2 :docspr:`59` (new-feature)
|
|
||||||
- docs: Add PN532 On Tag Trigger :docspr:`57` (new-feature)
|
|
||||||
- yaml: Add CSE776 for Sonoff Pow R2 :yamlpr:`190` (new-feature)
|
|
||||||
- yaml: Add Text Sensors :yamlpr:`166` (new-feature)
|
|
||||||
- yaml: Add PN532 On Tag Trigger :yamlpr:`189` (new-feature)
|
|
||||||
- lib: Add MQTT publish JSON action and subscribe JSON trigger :libpr:`230` (new-feature)
|
|
||||||
- yaml: Add MQTT publish JSON action and subscribe JSON trigger :yamlpr:`193` (new-feature)
|
|
||||||
- docs: Add MQTT publish JSON action and subscribe JSON trigger :docspr:`60` (new-feature)
|
|
||||||
- lib: Add PMSX003 Particulate Matter Sensor :libpr:`229` (new-feature)
|
|
||||||
- docs: Add PMSX003 Particulate Matter Sensor :docspr:`58` (new-feature)
|
|
||||||
- lib: Add update component action and scripts :libpr:`232` (new-feature)
|
|
||||||
- docs: Add update component action and scripts :docspr:`61` (new-feature)
|
|
||||||
- lib: Implement HASS device registry for MQTT components :libpr:`233` (new-feature)
|
|
||||||
- lib: Add FastLED color correction option :libpr:`234` (new-feature)
|
|
||||||
- docs: Add FastLED color correction option :docspr:`64` (new-feature)
|
|
||||||
- yaml: Add update component action and scripts :yamlpr:`196` (new-feature)
|
|
||||||
- yaml: Add PMSX003 Particulate Matter Sensor :yamlpr:`192` (new-feature)
|
|
||||||
- yaml: Add FastLED color correction option :yamlpr:`200` (new-feature)
|
|
||||||
- yaml: Fix triggers being interpreted as a sequence of automations :yamlpr:`199`
|
|
||||||
- yaml: Fix value range trigger :expressionless: :yamlpr:`201`
|
|
||||||
- lib: Make naming convention consistent :libpr:`231` (breaking-change)
|
|
||||||
- docs: Make naming convention consistent :docspr:`62` (breaking-change)
|
|
||||||
- docs: Fix some typos :docspr:`65`
|
|
||||||
- yaml: Improve API naming convention consistency :yamlpr:`197` (breaking-change)
|
|
||||||
- yaml: Fix some typos :yamlpr:`202`
|
|
||||||
- docs: Add logger.log action :docspr:`63` (new-feature)
|
|
||||||
- yaml: Add logger.log action :yamlpr:`198` (new-feature)
|
|
||||||
- docs: Fix template sensor docs :docspr:`66`
|
|
||||||
- docs: Fix text sensor outdated API docs :docspr:`70`
|
|
||||||
- docs: Add Stepper Support :docspr:`68` (new-feature)
|
|
||||||
- lib: Add stepper motor support :libpr:`239` (new-feature)
|
|
||||||
- lib: Add send_first_at option to sliding window sensor filter :libpr:`240` (new-feature)
|
|
||||||
- docs: Add send_first_at option to sliding window sensor filter :docspr:`69` (new-feature)
|
|
||||||
- lib: Fix display line drawing algorithm :libpr:`241`
|
|
||||||
- lib: Fix availability calculation :libpr:`242`
|
|
||||||
- yaml: Add Stepper Motor Support :yamlpr:`206` (new-feature)
|
|
||||||
- yaml: Add send_first_at option to sliding window sensor filter :yamlpr:`207` (new-feature)
|
|
||||||
- docs: Switch example to Dehumidifier, minor grammar/puncuation :docspr:`67` by :ghuser:`rorpage`
|
|
||||||
- yaml: Auto-Decode stacktraces :yamlpr:`214` (new-feature)
|
|
||||||
- yaml: Add generate home assistant config command :yamlpr:`208` (new-feature)
|
|
||||||
- yaml: Update Gitlab Build Script :yamlpr:`215`
|
|
||||||
- lib: Fix status binary sensor always reporting false internally :libpr:`257`
|
|
||||||
- yaml: Fix HLW8012 Voltage Divider option not being added to source :yamlpr:`224`
|
|
||||||
- lib: Fix HLW8012 Initial Value Reporting :libpr:`254`
|
|
||||||
- lib: Clean up Time API :libpr:`253`
|
|
||||||
- yaml: Better typing to components :yamlpr:`225`
|
|
||||||
- lib: Support uploading OTA updates over web server :libpr:`255` (new-feature)
|
|
||||||
- lib: Save and Restore states from RTC memory :libpr:`258` (new-feature)
|
|
||||||
- docs: Revert add power_on_value to gpio switch :docspr:`78`
|
|
||||||
- lib: Improve default log levels and log sources :libpr:`264`
|
|
||||||
- lib: OTA Read back server acknowledgement :libpr:`263`
|
|
||||||
- lib: Add Multi Click Trigger to binary sensor :libpr:`262` (new-feature)
|
|
||||||
- docs: Add binary sensor on multi click trigger :docspr:`77` (new-feature)
|
|
||||||
- lib: ESP32 BLE Release Bluetooth Classic Memory :libpr:`261`
|
|
||||||
- yaml: Add restore state option to template switch :yamlpr:`222`
|
|
||||||
- docs: Advertise esphomeflasher :docspr:`76` (new-feature)
|
|
||||||
- docs: Replace table generator with custom RST directive :docspr:`75`
|
|
||||||
- yaml: Clean up time API :yamlpr:`221`
|
|
||||||
- yaml: Revert Add power on value to GPIO switch :yamlpr:`223`
|
|
||||||
- yaml: Add binary sensor multi click trigger :yamlpr:`226` (new-feature)
|
|
||||||
- lib: Add Total Daily Energy Sensor :libpr:`256` (new-feature)
|
|
||||||
- yaml: Add total daily energy sensor :yamlpr:`220` (new-feature)
|
|
||||||
- docs: Add total daily energy sensor :docspr:`79`
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Past Changelogs
|
|
||||||
---------------
|
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:glob:
|
:glob:
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
:hidden:
|
||||||
|
|
||||||
*
|
*
|
||||||
|
|
||||||
.. disqus::
|
|
||||||
|
23
esphomeyaml/changelog/v1.10.0.rst
Normal file
23
esphomeyaml/changelog/v1.10.0.rst
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
Changelog - Version 1.9.0
|
||||||
|
=========================
|
||||||
|
|
||||||
|
.. seo::
|
||||||
|
:description: Changelog for esphomelib version 1.9.0.
|
||||||
|
:image: /_static/changelog-1.9.0.png
|
||||||
|
:author: Otto Winter
|
||||||
|
:author_twitter: @OttoWinter_
|
||||||
|
|
||||||
|
.. imgtable::
|
||||||
|
|
||||||
|
Beta Releases, guides/faq.html#how-do-i-update-to-the-latest-beta-release, new-box.svg
|
||||||
|
|
||||||
|
Past Changelogs
|
||||||
|
---------------
|
||||||
|
|
||||||
|
.. toctree::
|
||||||
|
:glob:
|
||||||
|
:maxdepth: 1
|
||||||
|
|
||||||
|
v*
|
||||||
|
|
||||||
|
.. disqus::
|
340
esphomeyaml/changelog/v1.9.0.rst
Normal file
340
esphomeyaml/changelog/v1.9.0.rst
Normal file
@ -0,0 +1,340 @@
|
|||||||
|
Changelog - Version 1.9.0
|
||||||
|
=========================
|
||||||
|
|
||||||
|
.. seo::
|
||||||
|
:description: Changelog for esphomelib version 1.9.0.
|
||||||
|
:image: /_static/changelog-1.9.0.png
|
||||||
|
:author: Otto Winter
|
||||||
|
:author_twitter: @OttoWinter_
|
||||||
|
|
||||||
|
.. imgtable::
|
||||||
|
|
||||||
|
Beta Releases, guides/faq.html#how-do-i-update-to-the-latest-beta-release, new-box.svg
|
||||||
|
Text Sensors, components/text_sensor/index, folder-open.svg
|
||||||
|
MQTT Subscribe, components/sensor/mqtt_subscribe, mqtt.png
|
||||||
|
|
||||||
|
Stepper, components/stepper/index, stepper.svg
|
||||||
|
CSE7766, components/sensor/cse7766, cse7766.svg
|
||||||
|
PMSX003, components/sensor/pmsx003, pmsx003.svg
|
||||||
|
|
||||||
|
esphomeflasher, guides/faq.html#i-can-t-get-flashing-over-usb-to-work, logo.svg
|
||||||
|
Total Daily Energy, components/sensor/total_daily_energy, sigma.svg
|
||||||
|
MY9231/MY9291 LED driver, components/my9231, my9231.svg
|
||||||
|
|
||||||
|
|
||||||
|
It's time for another release of esphomelib: 1.9.0. This release is quite different from the last one,
|
||||||
|
it doesn't focus that much on new integrations with a "modest" amount of 7 new integrations. No, most of the
|
||||||
|
development has been focused on improving the core architecture and making the esphomelib ecosystem easier to use.
|
||||||
|
Because that's my main goal of this project: Providing a great user-experience so that you can focus on building
|
||||||
|
awesome things with DIY hardware!
|
||||||
|
|
||||||
|
The features I'm particularly excited about are:
|
||||||
|
|
||||||
|
* :ref:`esphomeflasher <esphomeflasher>` - Experiencing problems flashing esphomelib firmwares using esphomeyaml?
|
||||||
|
No problem, esphomeflasher is a tool designed to make that super easy. Just let esphomeyaml generate the binary and flash
|
||||||
|
from your PC.
|
||||||
|
* :doc:`Over-the-Air Updates </esphomeyaml/components/ota>` have been completely re-written to make them a lot more
|
||||||
|
stable.
|
||||||
|
* A lot of work has been put in to provide more context in YAML validation errors. Sometimes, esphomeyaml will even
|
||||||
|
try to give you suggestions for how to fix a validation error!
|
||||||
|
* A new release cycle: esphomeyaml now also has a :ref:`beta release channel <faq-beta>` kind of like Home Assistant. This helps to
|
||||||
|
iron out the most important bugs before each stable release
|
||||||
|
* And of course, lots of stability improvements and bug fixes :)
|
||||||
|
|
||||||
|
Thank you very much to everybody who contributed to this release with new code or by
|
||||||
|
:ref:`reporting bugs <faq-bug_report>`!
|
||||||
|
|
||||||
|
New Components
|
||||||
|
--------------
|
||||||
|
|
||||||
|
- There's a new base component called :doc:`text sensors </esphomeyaml/components/text_sensor/index>` for using
|
||||||
|
text-based inputs, not just numbers like the generic :doc:`sensors </esphomeyaml/components/sensor/index>` did
|
||||||
|
(:yamlpr:`166`, :docspr:`52`)
|
||||||
|
|
||||||
|
- The new MQTT Subscribe Sensors allow you to get external data into esphomelib's ecosystem via MQTT
|
||||||
|
(:libpr:`193`, :yamlpr:`175`, :docspr:`50`)
|
||||||
|
|
||||||
|
- Added :doc:`CSE7766 Power Sensor </esphomeyaml/components/sensor/cse7766>` to support power measurements
|
||||||
|
on the Sonoff Pow R2 (:libpr:`277`, :yamlpr:`190`, :docspr:`59`)
|
||||||
|
|
||||||
|
- Thanks to :ghuser:`puuu`, the LED driver in the Sonoff B1 (MY9231) is now supported!
|
||||||
|
(:libpr:`266`, :yamlpr:`227`, :docspr:`80`)
|
||||||
|
|
||||||
|
- Added the :doc:`PMSX003 Particulate Matter Sensor </esphomeyaml/components/sensor/pmsx003>`
|
||||||
|
(:libpr:`229`, :yamlpr:`192`, :docspr:`58`)
|
||||||
|
|
||||||
|
- Added support for :doc:`A4988 Stepper Motors </esphomeyaml/components/stepper/index>` (:libpr:`239`,
|
||||||
|
:yamlpr:`206`, :docspr:`68`)
|
||||||
|
|
||||||
|
- Added :doc:`total daily energy sensor </esphomeyaml/components/sensor/total_daily_energy>` to accumulate the total
|
||||||
|
power usage over one day (:libpr:`256`, :yamlpr:`220`)
|
||||||
|
|
||||||
|
New Features
|
||||||
|
------------
|
||||||
|
|
||||||
|
- Compiling for ESP32s is now possible on RPis 🎉
|
||||||
|
|
||||||
|
- esphomelib now has a new tool: `esphomeflasher <https://github.com/OttoWinter/esphomeflasher>`__ to simplify
|
||||||
|
flashing on Windows/MacOS machines **without having to install esphomeyaml**. So if esphomeyaml for some reason
|
||||||
|
can't find your USB port, you now can use the esphomeflasher app. See :ref:`esphomeflasher`.
|
||||||
|
|
||||||
|
- ESP8266s now save the states of lights/switches/... internally and restores them on boot.
|
||||||
|
Additionally, esphomelib can now operate in fully offline mode if your WiFi network goes down
|
||||||
|
or the MQTT broker is unreachable, see :ref:`automation-networkless`
|
||||||
|
(:libpr:`258`, :libpr:`267`, :yamlpr:`229`)
|
||||||
|
|
||||||
|
- The :doc:`Over-the-Air Update </esphomeyaml/components/ota>` process was quite buggy sometimes and the Arduino-library
|
||||||
|
esphomelib used was doing some weird stuff. The OTA-process has now been completely re-written to be more stable
|
||||||
|
(:libpr:`204`, :yamlpr:`177`).
|
||||||
|
|
||||||
|
- Add support for the Home Assistant device registry. If you're using `Home Assistant 0.81.0 <https://www.home-assistant.io/blog/2018/10/26/release-81/>`__
|
||||||
|
or higher you will see a list of all components for each esphomelib node in the integrations screen
|
||||||
|
(:libpr:`233`).
|
||||||
|
|
||||||
|
- The current esphomelib version and compilation time are now printed on each boot
|
||||||
|
(:libpr:`189`, :yamlpr:`159`):
|
||||||
|
|
||||||
|
.. code-block:: text
|
||||||
|
|
||||||
|
[13:57:33][I][application:092]: You're running esphomelib v1.9.0 compiled on Nov 3 2018, 13:55:11
|
||||||
|
|
||||||
|
- Stack traces in the USB logs are now automatically decoded to make debugging easier
|
||||||
|
(:yamlpr:`214`)
|
||||||
|
|
||||||
|
- Added :ref:`mqtt-on_json_message` and :ref:`mqtt-publish_json_action` to make using JSON for MQTT payloads easier
|
||||||
|
(:libpr:`230`, :yamlpr:`193`, :docspr:`60`)
|
||||||
|
|
||||||
|
- The remote (IR) components have received support for Samsung's IR protocol
|
||||||
|
(:yamlpr:`176`, :docspr:`48`)
|
||||||
|
|
||||||
|
- Added :ref:`component-update_action`, :ref:`logger-log_action` and :ref:`script-execute_action` for simplifying
|
||||||
|
automations
|
||||||
|
(:libpr:`232`, :yamlpr:`196`, :yamlpr:`198`, :docspr:`61`, :docspr:`63`)
|
||||||
|
|
||||||
|
- Added :ref:`binary_sensor-on_multi_click` trigger to distinguish between double, long, and single clicks.
|
||||||
|
(:libpr:`262`, :docspr:`77`, :yamlpr:`226`)
|
||||||
|
|
||||||
|
- Added an :ref:`pn532-on_tag` to :doc:`PN532 NFC Readers </esphomeyaml/components/pn532>` so that automations
|
||||||
|
can directly use the NFC tag ID
|
||||||
|
(:libpr:`194`, :yamlpr:`189`, :docspr:`57`)
|
||||||
|
|
||||||
|
- Added a ``hass-config`` command which generates a Home Assistant configuration for your esphomeyaml nodes.
|
||||||
|
Useful if you're not using MQTT discovery (:yamlpr:`208`)
|
||||||
|
|
||||||
|
- All documentation pages now have comment systems powered by `disqus <https://disqus.com/>`__
|
||||||
|
(:docspr:`47`)
|
||||||
|
|
||||||
|
- You now have to option to have a different log level for log messages sent over MQTT (:ref:`docs <mqtt-message>`,
|
||||||
|
:yamlpr:`167`, :docspr:`51`)
|
||||||
|
|
||||||
|
- Added a color correction option to :doc:`FastLED addressable lights </esphomeyaml/components/light/fastled_clockless>`
|
||||||
|
(:libpr:`234`, :yamlpr:`200`, :docspr:`64`)
|
||||||
|
|
||||||
|
- Added a ``clean`` command to esphomeyaml to fix some occasional build errors
|
||||||
|
(:yamlpr:`181`)
|
||||||
|
|
||||||
|
- Added a ``send_first_at`` option to sliding window moving average sensor filters
|
||||||
|
(:libpr:`240`, :yamlpr:`207`, :docspr:`69`)
|
||||||
|
|
||||||
|
- You can now upload OTA firmware files with the :doc:`web server component </esphomeyaml/components/web_server>`
|
||||||
|
|
||||||
|
- Added the ability to define global variables in esphomeyaml: :ref:`config-globals`.
|
||||||
|
|
||||||
|
- Added a ``frequency`` option to the :doc:`/esphomeyaml/components/output/esp8266_pwm`.
|
||||||
|
|
||||||
|
Breaking Changes
|
||||||
|
----------------
|
||||||
|
|
||||||
|
- As part of the rewrite of Over-The-Air updates, the old OTA protocol is incompatible with the new one -
|
||||||
|
But fear not, esphomeyaml still supports the legacy OTA update process. On your first OTA upload with 1.9.0, you will
|
||||||
|
see esphomeyaml try with the new OTA method and fail. After that, esphomeyaml will fall back to the old OTA
|
||||||
|
process and upload correctly (:libpr:`204`).
|
||||||
|
|
||||||
|
- esphomelib's naming convention has been made more consistent. If you're not using any :ref:`lambdas <config-lambda>`,
|
||||||
|
everything will still work. However, if you're using the C++ API, there are a couple of breaking changes:
|
||||||
|
|
||||||
|
For sensors and binary sensors, ``id(my_sensor).value`` has been deprecated and ``id(my_sensor).state`` should be used
|
||||||
|
instead. Additionally, the syntax for toggling lights and switches through C++ has been changed. Please see
|
||||||
|
the :docspr:`62` changeset for more information
|
||||||
|
(:libpr:`231`, :docspr:`62`, :yamlpr:`197`)
|
||||||
|
|
||||||
|
Release 1.9.1 - November 19
|
||||||
|
---------------------------
|
||||||
|
|
||||||
|
- lib: Fix RDM6300 not reporting cards :libpr:`278`
|
||||||
|
- lib: Fix SNTP with less than 3 servers :libpr:`279`
|
||||||
|
- lib: Fix update interval log missing time unit :libpr:`280`
|
||||||
|
- lib: Fix CSE7766 spamming logs :libpr:`281`
|
||||||
|
- lib: Fix outdated links :libpr:`282`
|
||||||
|
- yaml: Fix SNTP servers option :yamlpr:`237`
|
||||||
|
|
||||||
|
Release 1.9.2 - November 25
|
||||||
|
---------------------------
|
||||||
|
|
||||||
|
- lib: Fix crashing when logger not being used :libpr:`285`
|
||||||
|
- lib: Fix template cover spamming logs :libpr:`287`
|
||||||
|
- lib: Improve ESP32 BLE tracker stability :libpr:`289`
|
||||||
|
- lib: Fix sensor filters using C++ undefined behavior :libpr:`293`
|
||||||
|
|
||||||
|
Release 1.9.3 - December 1
|
||||||
|
--------------------------
|
||||||
|
|
||||||
|
- docs: Fix Sonoff Basic pinouts :docspr:`88` by :ghuser:`sherbang`
|
||||||
|
- docs: Update cwww.rst :docspr:`85` by :ghuser:`Melkor82`
|
||||||
|
- lib: Fix PMSX003 :libpr:`300`
|
||||||
|
- lib: Fix issue with filters introduced in 1.9.2 :libpr:`296`
|
||||||
|
- lib: Fix BMP085 pressure value :libpr:`292`
|
||||||
|
- yaml: CSE7766 update interval :yamlpr:`250`
|
||||||
|
- docs: CSE7766 Update Interval :docspr:`91`
|
||||||
|
|
||||||
|
All changes
|
||||||
|
-----------
|
||||||
|
|
||||||
|
- docs: Clarify ESP32 BLE Tracker comment :docspr:`42`
|
||||||
|
- yaml: Add a link to Home Assistant in README :yamlpr:`152` by :ghuser:`jonnyair`
|
||||||
|
- lib: Add a link to Home Assistant in README.md :libpr:`184` by :ghuser:`jonnyair`
|
||||||
|
- docs: Fix time docs 12-hour clock strftime format :docspr:`43`
|
||||||
|
- lib: Fix ESP32 BLE Presence detection always on :libpr:`185`
|
||||||
|
- lib: Fix LCD display include :libpr:`186`
|
||||||
|
- lib: Fix template switch spamming output :libpr:`187`
|
||||||
|
- lib: Fix using HTU21D for SI7021 :libpr:`188`
|
||||||
|
- lib: Fix components sending invalid state on startup if integration not ready yet :libpr:`195`
|
||||||
|
- lib: Log esphomelib version and compilation time on boot :libpr:`189` (new-feature)
|
||||||
|
- yaml: Log esphomelib version and compilation time on boot :yamlpr:`159` (new-feature)
|
||||||
|
- yaml: Fix raw remote receiver :yamlpr:`158`
|
||||||
|
- lib: Add Code of Conduct (Contributor Covenant) :libpr:`196`
|
||||||
|
- lib: Create CONTRIBUTING.md :libpr:`197`
|
||||||
|
- lib: Create issue templates :libpr:`198`
|
||||||
|
- lib: Create pull request template :libpr:`199`
|
||||||
|
- yaml: Create Pull Request Template :yamlpr:`172`
|
||||||
|
- yaml: Create CONTRIBUTING.md :yamlpr:`169`
|
||||||
|
- yaml: Add Code of Conduct (Contributor Covenant) :yamlpr:`168`
|
||||||
|
- yaml: Create issue templates :yamlpr:`171`
|
||||||
|
- docs: Add Code of Conduct (Contributor Covenant) :docspr:`44`
|
||||||
|
- docs: Create Pull Request Template :docspr:`45`
|
||||||
|
- yaml: Fix readme broken link :yamlpr:`174`
|
||||||
|
- lib: Fix pulse counter counting inverted on ESP8266 :libpr:`200`
|
||||||
|
- yaml: Add use_build_flags removal notice :yamlpr:`173`
|
||||||
|
- docs: Highlight update_interval gotchas :docspr:`46`
|
||||||
|
- docs: Add Disqus and cleanup :docspr:`47` (new-feature)
|
||||||
|
- lib: Fix PN532 not logging discovered tags :libpr:`202`
|
||||||
|
- yaml: Add Samsung IR protocol :yamlpr:`176` by :ghuser:`escoand` (new-feature)
|
||||||
|
- docs: add samsung ir protocol :docspr:`48` by :ghuser:`escoand` (new-feature)
|
||||||
|
- lib: Bump FastLED to 3.2.0 :libpr:`203`
|
||||||
|
- yaml: Fix Wifi power_save_mode option :yamlpr:`178`
|
||||||
|
- lib: Fix application sort order :libpr:`211`
|
||||||
|
- docs: Improve pulse counter docs :docspr:`49`
|
||||||
|
- lib: Fix ESP32 BLE Controller Init :libpr:`213`
|
||||||
|
- lib: Fix Web Server Creating Infinite Print Loop :libpr:`214`
|
||||||
|
- lib: Add TOGGLE payload to more components :libpr:`212` (new-feature)
|
||||||
|
- lib: ESP8266 Pulse Counter Improve Timing :libpr:`205`
|
||||||
|
- lib: Add MQTT Subscribe Sensor :libpr:`193` (new-feature)
|
||||||
|
- docs: Add MQTT Subscribe sensor :docspr:`50` (new-feature)
|
||||||
|
- yaml: Add MQTT Subscribe sensor :yamlpr:`175` (new-feature)
|
||||||
|
- yaml: MQTT different log level :yamlpr:`167` (new-feature)
|
||||||
|
- docs: Add option to have different log level over MQTT :docspr:`51` (new-feature)
|
||||||
|
- yaml: Add clean build files command and auto-clean on version change :yamlpr:`181` (new-feature)
|
||||||
|
- lib: Add power on value to switch :libpr:`207` (new-feature)
|
||||||
|
- lib: Rework OTA to be more stable :libpr:`204` (breaking-change) (new-feature)
|
||||||
|
- yaml: Rework OTA to be more stable :yamlpr:`177` (new-feature)
|
||||||
|
- lib: Fix WiFi not working when GPIO 0 connected :libpr:`215`
|
||||||
|
- lib: Fix MiFlora illuminance reading :libpr:`220`
|
||||||
|
- lib: Remove invalid file headers :libpr:`219`
|
||||||
|
- yaml: Fix config dump time output :yamlpr:`184`
|
||||||
|
- lib: GPIO Switch Rewrite :libpr:`217`
|
||||||
|
- docs: Add power on value to GPIO Switch :docspr:`55` (new-feature)
|
||||||
|
- yaml: Decentralize Automation Generator Code :yamlpr:`182`
|
||||||
|
- lib: Add PN532 On Tag Trigger :libpr:`226` (new-feature)
|
||||||
|
- lib: Add text sensors :libpr:`194` (new-feature)
|
||||||
|
- docs: Add Text sensors :docspr:`52` (new-feature)
|
||||||
|
- lib: Fix PCF8574 assert. :libpr:`223` by :ghuser:`lobradov`
|
||||||
|
- lib: Unify Xiaomi MiJia&MiFlora Implementations :libpr:`225`
|
||||||
|
- docs: Unify xiaomi implementations :docspr:`56`
|
||||||
|
- yaml: Unify Xiaomi implementations :yamlpr:`188`
|
||||||
|
- lib: Add CSE7766 for Sonoff Pow R2 :libpr:`227` (new-feature)
|
||||||
|
- docs: Add CSE7766 for Sonoff Pow R2 :docspr:`59` (new-feature)
|
||||||
|
- docs: Add PN532 On Tag Trigger :docspr:`57` (new-feature)
|
||||||
|
- yaml: Add CSE776 for Sonoff Pow R2 :yamlpr:`190` (new-feature)
|
||||||
|
- yaml: Add Text Sensors :yamlpr:`166` (new-feature)
|
||||||
|
- yaml: Add PN532 On Tag Trigger :yamlpr:`189` (new-feature)
|
||||||
|
- lib: Add MQTT publish JSON action and subscribe JSON trigger :libpr:`230` (new-feature)
|
||||||
|
- yaml: Add MQTT publish JSON action and subscribe JSON trigger :yamlpr:`193` (new-feature)
|
||||||
|
- docs: Add MQTT publish JSON action and subscribe JSON trigger :docspr:`60` (new-feature)
|
||||||
|
- lib: Add PMSX003 Particulate Matter Sensor :libpr:`229` (new-feature)
|
||||||
|
- docs: Add PMSX003 Particulate Matter Sensor :docspr:`58` (new-feature)
|
||||||
|
- lib: Add update component action and scripts :libpr:`232` (new-feature)
|
||||||
|
- docs: Add update component action and scripts :docspr:`61` (new-feature)
|
||||||
|
- lib: Implement HASS device registry for MQTT components :libpr:`233` (new-feature)
|
||||||
|
- lib: Add FastLED color correction option :libpr:`234` (new-feature)
|
||||||
|
- docs: Add FastLED color correction option :docspr:`64` (new-feature)
|
||||||
|
- yaml: Add update component action and scripts :yamlpr:`196` (new-feature)
|
||||||
|
- yaml: Add PMSX003 Particulate Matter Sensor :yamlpr:`192` (new-feature)
|
||||||
|
- yaml: Add FastLED color correction option :yamlpr:`200` (new-feature)
|
||||||
|
- yaml: Fix triggers being interpreted as a sequence of automations :yamlpr:`199`
|
||||||
|
- yaml: Fix value range trigger :expressionless: :yamlpr:`201`
|
||||||
|
- lib: Make naming convention consistent :libpr:`231` (breaking-change)
|
||||||
|
- docs: Make naming convention consistent :docspr:`62` (breaking-change)
|
||||||
|
- docs: Fix some typos :docspr:`65`
|
||||||
|
- yaml: Improve API naming convention consistency :yamlpr:`197` (breaking-change)
|
||||||
|
- yaml: Fix some typos :yamlpr:`202`
|
||||||
|
- docs: Add logger.log action :docspr:`63` (new-feature)
|
||||||
|
- yaml: Add logger.log action :yamlpr:`198` (new-feature)
|
||||||
|
- docs: Fix template sensor docs :docspr:`66`
|
||||||
|
- docs: Fix text sensor outdated API docs :docspr:`70`
|
||||||
|
- docs: Add Stepper Support :docspr:`68` (new-feature)
|
||||||
|
- lib: Add stepper motor support :libpr:`239` (new-feature)
|
||||||
|
- lib: Add send_first_at option to sliding window sensor filter :libpr:`240` (new-feature)
|
||||||
|
- docs: Add send_first_at option to sliding window sensor filter :docspr:`69` (new-feature)
|
||||||
|
- lib: Fix display line drawing algorithm :libpr:`241`
|
||||||
|
- lib: Fix availability calculation :libpr:`242`
|
||||||
|
- yaml: Add Stepper Motor Support :yamlpr:`206` (new-feature)
|
||||||
|
- yaml: Add send_first_at option to sliding window sensor filter :yamlpr:`207` (new-feature)
|
||||||
|
- docs: Switch example to Dehumidifier, minor grammar/puncuation :docspr:`67` by :ghuser:`rorpage`
|
||||||
|
- docs: Tiny typo fix. :docspr:`73` by :ghuser:`corbanmailloux`
|
||||||
|
- yaml: Auto-Decode stacktraces :yamlpr:`214` (new-feature)
|
||||||
|
- docs: Fix a broken link to setting up a BLE tracker. :docspr:`72` by :ghuser:`corbanmailloux`
|
||||||
|
- yaml: Add generate home assistant config command :yamlpr:`208` (new-feature)
|
||||||
|
- yaml: Update Gitlab Build Script :yamlpr:`215`
|
||||||
|
- lib: Fix status binary sensor always reporting false internally :libpr:`257`
|
||||||
|
- yaml: Fix HLW8012 Voltage Divider option not being added to source :yamlpr:`224`
|
||||||
|
- lib: Fix HLW8012 Initial Value Reporting :libpr:`254`
|
||||||
|
- lib: Clean up Time API :libpr:`253`
|
||||||
|
- yaml: Better typing to components :yamlpr:`225`
|
||||||
|
- lib: Support uploading OTA updates over web server :libpr:`255` (new-feature)
|
||||||
|
- lib: Save and Restore states from RTC memory :libpr:`258` (new-feature)
|
||||||
|
- docs: Revert add power_on_value to gpio switch :docspr:`78`
|
||||||
|
- lib: Improve default log levels and log sources :libpr:`264`
|
||||||
|
- lib: OTA Read back server acknowledgement :libpr:`263`
|
||||||
|
- lib: Add Multi Click Trigger to binary sensor :libpr:`262` (new-feature)
|
||||||
|
- docs: Add binary sensor on multi click trigger :docspr:`77` (new-feature)
|
||||||
|
- lib: ESP32 BLE Release Bluetooth Classic Memory :libpr:`261`
|
||||||
|
- yaml: Add restore state option to template switch :yamlpr:`222`
|
||||||
|
- docs: Advertise esphomeflasher :docspr:`76` (new-feature)
|
||||||
|
- docs: Replace table generator with custom RST directive :docspr:`75`
|
||||||
|
- yaml: Clean up time API :yamlpr:`221`
|
||||||
|
- yaml: Revert Add power on value to GPIO switch :yamlpr:`223`
|
||||||
|
- yaml: Add binary sensor multi click trigger :yamlpr:`226` (new-feature)
|
||||||
|
- lib: Add Total Daily Energy Sensor :libpr:`256` (new-feature)
|
||||||
|
- yaml: Add total daily energy sensor :yamlpr:`220` (new-feature)
|
||||||
|
- docs: Add total daily energy sensor :docspr:`79`
|
||||||
|
- lib: Introduce new setup phase: "dump config" to allow fully-offline operation :libpr:`267`
|
||||||
|
- yaml: Let esphomeyaml know about class inheritance :yamlpr:`229`
|
||||||
|
- docs: ESP32 deep sleep wake up multiple pins :docspr:`81`
|
||||||
|
- yaml: Deep Sleep Wake Up From Multiple Pins :yamlpr:`230`
|
||||||
|
- lib: Deep Sleep Multi Wakeup :libpr:`268`
|
||||||
|
- lib: MY9231/MY9291 LED driver support :libpr:`266` by :ghuser:`puuu` (new-feature)
|
||||||
|
- yaml: Add MY9231 support :yamlpr:`227` by :ghuser:`puuu` (new-feature)
|
||||||
|
- docs: MY9231/MY9291 LED driver documentation :docspr:`80` by :ghuser:`puuu` (new-feature)
|
||||||
|
- docs: SEO Optimization :docspr:`82`
|
||||||
|
|
||||||
|
|
||||||
|
Past Changelogs
|
||||||
|
---------------
|
||||||
|
|
||||||
|
.. toctree::
|
||||||
|
:glob:
|
||||||
|
:maxdepth: 1
|
||||||
|
|
||||||
|
v*
|
||||||
|
|
||||||
|
.. disqus::
|
@ -1,4 +1,5 @@
|
|||||||
Changelog
|
Changelog
|
||||||
=========
|
=========
|
||||||
|
|
||||||
This page has moved to :doc:`/esphomeyaml/changelog/index`
|
.. redirect::
|
||||||
|
:url: /esphomeyaml/changelog/index.html
|
||||||
|
28
seo.py
28
seo.py
@ -17,6 +17,12 @@ class SEONode(nodes.General, nodes.Element):
|
|||||||
self.keywords = keywords
|
self.keywords = keywords
|
||||||
|
|
||||||
|
|
||||||
|
class RedirectNode(nodes.General, nodes.Element):
|
||||||
|
def __init__(self, url=None):
|
||||||
|
super(RedirectNode, self).__init__()
|
||||||
|
self.url = url
|
||||||
|
|
||||||
|
|
||||||
def seo_visit(self: HTMLTranslator, node: SEONode):
|
def seo_visit(self: HTMLTranslator, node: SEONode):
|
||||||
def encode_text(text):
|
def encode_text(text):
|
||||||
special_characters = {ord('&'): '&',
|
special_characters = {ord('&'): '&',
|
||||||
@ -70,9 +76,19 @@ def seo_visit(self: HTMLTranslator, node: SEONode):
|
|||||||
create_content_meta("theme-color", "#DFDFDF")
|
create_content_meta("theme-color", "#DFDFDF")
|
||||||
|
|
||||||
|
|
||||||
|
def redirect_visit(self: HTMLTranslator, node: RedirectNode):
|
||||||
|
self.meta.append('<meta http-equiv="refresh" content="0; url={}">'.format(node.url))
|
||||||
|
|
||||||
|
self.body.append(self.starttag(node, 'p',
|
||||||
|
'Redirecting to <a href="{0}">{0}</a>'.format(node.url)))
|
||||||
|
|
||||||
|
|
||||||
def seo_depart(self, _):
|
def seo_depart(self, _):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
def redirect_depart(self, _):
|
||||||
|
self.body.append('</p>')
|
||||||
|
|
||||||
|
|
||||||
class SEODirective(Directive):
|
class SEODirective(Directive):
|
||||||
option_spec = {
|
option_spec = {
|
||||||
@ -101,8 +117,20 @@ class SEODirective(Directive):
|
|||||||
|
|
||||||
return [SEONode(**self.options)]
|
return [SEONode(**self.options)]
|
||||||
|
|
||||||
|
class RedirectDirective(Directive):
|
||||||
|
option_spec = {
|
||||||
|
'url': directives.unchanged,
|
||||||
|
}
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
env = self.state.document.settings.env
|
||||||
|
|
||||||
|
return [RedirectNode(**self.options)]
|
||||||
|
|
||||||
|
|
||||||
def setup(app):
|
def setup(app):
|
||||||
app.add_directive('seo', SEODirective)
|
app.add_directive('seo', SEODirective)
|
||||||
app.add_node(SEONode, html=(seo_visit, seo_depart))
|
app.add_node(SEONode, html=(seo_visit, seo_depart))
|
||||||
|
app.add_directive('redirect', RedirectDirective)
|
||||||
|
app.add_node(RedirectNode, html=(redirect_visit, redirect_depart))
|
||||||
return {'version': '1.0'}
|
return {'version': '1.0'}
|
||||||
|
Loading…
Reference in New Issue
Block a user