Add deprecation message to custom component pages (#3318)

This commit is contained in:
Jesse Hills 2023-11-01 18:47:57 +13:00 committed by GitHub
parent 79b90216d4
commit aba2f3afd5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
14 changed files with 177 additions and 53 deletions

View File

@ -1,6 +1,16 @@
Custom Binary Sensor Custom Binary Sensor
==================== ====================
.. warning::
Custom components are deprecated, not recommended for new configurations
and will be removed from ESPHome in a future release.
Please look at creating a real ESPHome component and "importing" it into your
configuration with :doc:`/components/external_components`.
You can find some basic documentation on creating your own components
at :ref:`contributing_to_esphome`.
This integration can be used to create custom binary sensors in ESPHome This integration can be used to create custom binary sensors in ESPHome
using the C++ (Arduino) API. using the C++ (Arduino) API.

View File

@ -1,6 +1,16 @@
Custom Climate Custom Climate
============== ==============
.. warning::
Custom components are deprecated, not recommended for new configurations
and will be removed from ESPHome in a future release.
Please look at creating a real ESPHome component and "importing" it into your
configuration with :doc:`/components/external_components`.
You can find some basic documentation on creating your own components
at :ref:`contributing_to_esphome`.
This integration can be used to create custom climate devices in ESPHome This integration can be used to create custom climate devices in ESPHome
using the C++ (Arduino) API. using the C++ (Arduino) API.

View File

@ -1,6 +1,16 @@
Custom Cover Custom Cover
============ ============
.. warning::
Custom components are deprecated, not recommended for new configurations
and will be removed from ESPHome in a future release.
Please look at creating a real ESPHome component and "importing" it into your
configuration with :doc:`/components/external_components`.
You can find some basic documentation on creating your own components
at :ref:`contributing_to_esphome`.
This integration can be used to create custom covers in ESPHome This integration can be used to create custom covers in ESPHome
using the C++ (Arduino) API. using the C++ (Arduino) API.

View File

@ -8,6 +8,8 @@ External Components
You can easily import community or personal components using the external components feature. You can easily import community or personal components using the external components feature.
Bundled components can be overridden using this feature. Bundled components can be overridden using this feature.
You can find some basic documentation on creating your own components at :ref:`contributing_to_esphome`.
.. code-block:: yaml .. code-block:: yaml
external_components: external_components:
@ -91,15 +93,15 @@ Given the above example of ``my_components``, the folder structure must look lik
├── node2.yaml ├── node2.yaml
└── my_components └── my_components
├── my_component1 ├── my_component1
  │   ├── __init__.py ├── __init__.py
  │   ├── component1.cpp ├── component1.cpp
  │   ├── component1.h ├── component1.h
  │   └── sensor.py └── sensor.py
  └── my_component2 └── my_component2
     ├── __init__.py ├── __init__.py
     ├── component2.cpp ├── component2.cpp
     ├── component2.h ├── component2.h
     └── switch.py └── switch.py
.. _external-components_git: .. _external-components_git:
@ -119,16 +121,16 @@ For repositories where you share one or a few components:
.. code-block:: text .. code-block:: text
components components
  ├── my_component1 ├── my_component1
  │   ├── __init__.py ├── __init__.py
  │   ├── component1.cpp ├── component1.cpp
  │   ├── component1.h ├── component1.h
  │   └── sensor.py └── sensor.py
  └── my_component2 └── my_component2
     ├── __init__.py ├── __init__.py
     ├── component2.cpp ├── component2.cpp
     ├── component2.h ├── component2.h
     └── switch.py └── switch.py
example_component1.yaml <- not required but recommended example_component1.yaml <- not required but recommended
README.md README.md
@ -140,17 +142,17 @@ repository:
esphome esphome
├── components ├── components
   ├── my_component1 ├── my_component1
   │   ├── __init__.py ├── __init__.py
   │   ├── component1.cpp ├── component1.cpp
   │   ├── component1.h ├── component1.h
   │   └── sensor.py └── sensor.py
   ├── my_component2 ├── my_component2
   │   ├── __init__.py ├── __init__.py
   │   ├── component2.cpp ├── component2.cpp
   │   ├── component2.h ├── component2.h
   │   └── switch.py └── switch.py
  ... ...
... ...
HTTP git repositories in general are supported with this configuration: HTTP git repositories in general are supported with this configuration:

View File

@ -1,6 +1,16 @@
Custom Light Output Custom Light Output
=================== ===================
.. warning::
Custom components are deprecated, not recommended for new configurations
and will be removed from ESPHome in a future release.
Please look at creating a real ESPHome component and "importing" it into your
configuration with :doc:`/components/external_components`.
You can find some basic documentation on creating your own components
at :ref:`contributing_to_esphome`.
This integration can be used to create custom lights in ESPHome This integration can be used to create custom lights in ESPHome
using the C++ (Arduino) API. using the C++ (Arduino) API.

View File

@ -1,6 +1,16 @@
Custom Output Custom Output
============= =============
.. warning::
Custom components are deprecated, not recommended for new configurations
and will be removed from ESPHome in a future release.
Please look at creating a real ESPHome component and "importing" it into your
configuration with :doc:`/components/external_components`.
You can find some basic documentation on creating your own components
at :ref:`contributing_to_esphome`.
This integration can be used to create custom binary and float :doc:`outputs </components/output/index>` This integration can be used to create custom binary and float :doc:`outputs </components/output/index>`
in ESPHome using the C++ (Arduino) API. in ESPHome using the C++ (Arduino) API.

View File

@ -1,6 +1,16 @@
Custom Sensor Component Custom Sensor Component
======================= =======================
.. warning::
Custom components are deprecated, not recommended for new configurations
and will be removed from ESPHome in a future release.
Please look at creating a real ESPHome component and "importing" it into your
configuration with :doc:`/components/external_components`.
You can find some basic documentation on creating your own components
at :ref:`contributing_to_esphome`.
.. seo:: .. seo::
:description: Instructions for setting up Custom C++ sensors with ESPHome. :description: Instructions for setting up Custom C++ sensors with ESPHome.
:image: language-cpp.svg :image: language-cpp.svg

View File

@ -1,6 +1,16 @@
Custom Switch Custom Switch
============= =============
.. warning::
Custom components are deprecated, not recommended for new configurations
and will be removed from ESPHome in a future release.
Please look at creating a real ESPHome component and "importing" it into your
configuration with :doc:`/components/external_components`.
You can find some basic documentation on creating your own components
at :ref:`contributing_to_esphome`.
This integration can be used to create custom switches in ESPHome This integration can be used to create custom switches in ESPHome
using the C++ (Arduino) API. using the C++ (Arduino) API.

View File

@ -1,6 +1,16 @@
Custom Text Sensor Custom Text Sensor
================== ==================
.. warning::
Custom components are deprecated, not recommended for new configurations
and will be removed from ESPHome in a future release.
Please look at creating a real ESPHome component and "importing" it into your
configuration with :doc:`/components/external_components`.
You can find some basic documentation on creating your own components
at :ref:`contributing_to_esphome`.
This integration can be used to create custom text sensors in ESPHome This integration can be used to create custom text sensors in ESPHome
using the C++ (Arduino) API. using the C++ (Arduino) API.

View File

@ -1,6 +1,16 @@
Generic Custom Component Generic Custom Component
======================== ========================
.. warning::
Custom components are deprecated, not recommended for new configurations
and will be removed from ESPHome in a future release.
Please look at creating a real ESPHome component and "importing" it into your
configuration with :doc:`/components/external_components`.
You can find some basic documentation on creating your own components
at :ref:`contributing_to_esphome`.
This integration can be used to create generic custom components in ESPHome This integration can be used to create generic custom components in ESPHome
using the C++ (Arduino) API. This integration should be used in cases where using the C++ (Arduino) API. This integration should be used in cases where
none of ESPHome's abstraction layers (for example the "sensor", "binary sensor", none of ESPHome's abstraction layers (for example the "sensor", "binary sensor",

View File

@ -1,6 +1,16 @@
Custom I²C Device Custom I²C Device
================= =================
.. warning::
Custom components are deprecated, not recommended for new configurations
and will be removed from ESPHome in a future release.
Please look at creating a real ESPHome component and "importing" it into your
configuration with :doc:`/components/external_components`.
You can find some basic documentation on creating your own components
at :ref:`contributing_to_esphome`.
Lots of devices communicate using the I²C protocol. If you want to integrate Lots of devices communicate using the I²C protocol. If you want to integrate
a device into ESPHome that uses this protocol you can pretty much use almost a device into ESPHome that uses this protocol you can pretty much use almost
all Arduino-based code because the ``Wire`` library is also available in ESPHome. all Arduino-based code because the ``Wire`` library is also available in ESPHome.

View File

@ -1,6 +1,16 @@
Custom SPI Device Custom SPI Device
================= =================
.. warning::
Custom components are deprecated, not recommended for new configurations
and will be removed from ESPHome in a future release.
Please look at creating a real ESPHome component and "importing" it into your
configuration with :doc:`/components/external_components`.
You can find some basic documentation on creating your own components
at :ref:`contributing_to_esphome`.
Lots of devices communicate using the SPI protocol. If you want to integrate Lots of devices communicate using the SPI protocol. If you want to integrate
a device into ESPHome that uses this protocol you can pretty much use almost a device into ESPHome that uses this protocol you can pretty much use almost
all Arduino-based code because the ``SPI`` library is also available in ESPHome. all Arduino-based code because the ``SPI`` library is also available in ESPHome.

View File

@ -1,6 +1,16 @@
Custom UART Device Custom UART Device
================== ==================
.. warning::
Custom components are deprecated, not recommended for new configurations
and will be removed from ESPHome in a future release.
Please look at creating a real ESPHome component and "importing" it into your
configuration with :doc:`/components/external_components`.
You can find some basic documentation on creating your own components
at :ref:`contributing_to_esphome`.
Lots of devices communicate using the UART protocol. If you want to integrate Lots of devices communicate using the UART protocol. If you want to integrate
a device into ESPHome that uses this protocol you can pretty much use almost a device into ESPHome that uses this protocol you can pretty much use almost
all Arduino-based code because ESPHome has a nice abstraction over the UART bus. all Arduino-based code because ESPHome has a nice abstraction over the UART bus.

View File

@ -413,6 +413,8 @@ a "rebase". More info `here <https://developers.home-assistant.io/docs/en/develo
git fetch upstream dev git fetch upstream dev
git rebase upstream/dev git rebase upstream/dev
.. _contributing_to_esphome:
Contributing to ESPHome Contributing to ESPHome
----------------------- -----------------------
@ -445,18 +447,18 @@ like this:
├── codegen.py ├── codegen.py
├── config_validation.py ├── config_validation.py
├── components ├── components
   ├── __init__.py ├── __init__.py
   ├── dht12 ├── dht12
   │   ├── __init__.py ├── __init__.py
   │   ├── dht12.cpp ├── dht12.cpp
   │   ├── dht12.h ├── dht12.h
   │   ├── sensor.py ├── sensor.py
   ├── restart ├── restart
   │   ├── __init__.py ├── __init__.py
   │   ├── restart_switch.cpp ├── restart_switch.cpp
   │   ├── restart_switch.h ├── restart_switch.h
   │   ├── switch.py ├── switch.py
  ... ...
As you can see, all components are in the "components" folder. Each component is in its own As you can see, all components are in the "components" folder. Each component is in its own
subfolder which contains the Python code (.py) and the C++ code (.h and .cpp). subfolder which contains the Python code (.py) and the C++ code (.h and .cpp).