diff --git a/.github/workflows/add_prs_to_project.yml b/.github/workflows/add_prs_to_project.yml index 39df8a67801..51ac1f03d3b 100644 --- a/.github/workflows/add_prs_to_project.yml +++ b/.github/workflows/add_prs_to_project.yml @@ -13,7 +13,7 @@ jobs: - name: Generate app token id: token # Pinned to a specific version of the action for security reasons - uses: tibdex/github-app-token@f717b5ecd4534d3c4df4ce9b5c1c2214f0f7cd06 # v1.6.0 + uses: tibdex/github-app-token@021a2405c7f990db57f5eae5397423dcc554159c # v1.7.0 with: app_id: ${{ secrets.PROJECTS_APP_ID }} private_key: ${{ secrets.PROJECTS_APP_PEM }} diff --git a/.github/workflows/lock.yml b/.github/workflows/lock.yml index da6c785b713..ca1e0ec7893 100644 --- a/.github/workflows/lock.yml +++ b/.github/workflows/lock.yml @@ -11,7 +11,7 @@ jobs: pull-requests: write runs-on: ubuntu-latest steps: - - uses: dessant/lock-threads@v3 + - uses: dessant/lock-threads@v4.0.0 if: ${{ github.repository_owner == 'home-assistant' }} with: github-token: ${{ github.token }} diff --git a/Gemfile.lock b/Gemfile.lock index 75755dbe683..b10bb598a9b 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -79,7 +79,7 @@ GEM pathutil (0.16.2) forwardable-extended (~> 2.6) public_suffix (5.0.0) - racc (1.6.0) + racc (1.6.1) rack (2.2.4) rack-protection (3.0.4) rack diff --git a/package-lock.json b/package-lock.json index facfb47b44d..3b97670f895 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,7 +14,7 @@ "remark-lint-fenced-code-flag": "^3.1.1", "remark-lint-no-shell-dollars": "^3.1.1", "remark-stringify": "^10.0.2", - "textlint": "^12.2.3", + "textlint": "^12.2.4", "textlint-filter-rule-comments": "^1.2.2", "textlint-rule-common-misspellings": "^1.0.1", "textlint-rule-terminology": "^3.0.4" @@ -295,9 +295,9 @@ } }, "node_modules/@textlint/linter-formatter": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-12.2.3.tgz", - "integrity": "sha512-2lwxRwaKvTLTIYqcRWjkYgcMUnPj3SMhOxkiQQM6lVhQ6E6XsbT2LkgOTG+tip+xkTH0t455lF9pszwrNmAN7A==", + "version": "12.2.4", + "resolved": "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-12.2.4.tgz", + "integrity": "sha512-vF/qPrDYLH9jGB/HU8euVLv7BBATYmviBl9fGcx5vO8Lq/D2vHS9MUdk1JddgW/cDqnrI0nNVlLFUphJsXtp6w==", "dev": true, "dependencies": { "@azu/format-text": "^1.0.1", @@ -814,9 +814,9 @@ "dev": true }, "node_modules/ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "version": "8.11.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.2.tgz", + "integrity": "sha512-E4bfmKAhGiSTvMfL1Myyycaub+cUEU2/IvpylXkUu7CHBkBj1f/ikdzbD7YQ6FKUbixDxeYvB/xY4fvyroDlQg==", "dev": true, "dependencies": { "fast-deep-equal": "^3.1.1", @@ -5292,9 +5292,9 @@ "dev": true }, "node_modules/textlint": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/textlint/-/textlint-12.2.3.tgz", - "integrity": "sha512-+szG18GAzZ3taWTkF0wYsLIgsi+8Mlnq/Vl1AAk9Lr8M6ZhR3yt6oW/nb6+Ow+RFdpI8a0F5n6qynzv3rDDC+w==", + "version": "12.2.4", + "resolved": "https://registry.npmjs.org/textlint/-/textlint-12.2.4.tgz", + "integrity": "sha512-IlBJL4bR9RuqYV+YkQQvOznhmfClGGkuOyxiUaQ4qUj2IaJu2/rXei71x3JAIJF4SLEK7SbMoLVqXIerqIbhGA==", "dev": true, "dependencies": { "@textlint/ast-node-types": "^12.2.2", @@ -5302,7 +5302,7 @@ "@textlint/feature-flag": "^12.2.3", "@textlint/fixer-formatter": "^12.2.3", "@textlint/kernel": "^12.2.3", - "@textlint/linter-formatter": "^12.2.3", + "@textlint/linter-formatter": "^12.2.4", "@textlint/module-interop": "^12.2.3", "@textlint/textlint-plugin-markdown": "^12.2.3", "@textlint/textlint-plugin-text": "^12.2.3", @@ -6442,9 +6442,9 @@ } }, "@textlint/linter-formatter": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-12.2.3.tgz", - "integrity": "sha512-2lwxRwaKvTLTIYqcRWjkYgcMUnPj3SMhOxkiQQM6lVhQ6E6XsbT2LkgOTG+tip+xkTH0t455lF9pszwrNmAN7A==", + "version": "12.2.4", + "resolved": "https://registry.npmjs.org/@textlint/linter-formatter/-/linter-formatter-12.2.4.tgz", + "integrity": "sha512-vF/qPrDYLH9jGB/HU8euVLv7BBATYmviBl9fGcx5vO8Lq/D2vHS9MUdk1JddgW/cDqnrI0nNVlLFUphJsXtp6w==", "dev": true, "requires": { "@azu/format-text": "^1.0.1", @@ -6843,9 +6843,9 @@ "dev": true }, "ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "version": "8.11.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.2.tgz", + "integrity": "sha512-E4bfmKAhGiSTvMfL1Myyycaub+cUEU2/IvpylXkUu7CHBkBj1f/ikdzbD7YQ6FKUbixDxeYvB/xY4fvyroDlQg==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -9989,9 +9989,9 @@ "dev": true }, "textlint": { - "version": "12.2.3", - "resolved": "https://registry.npmjs.org/textlint/-/textlint-12.2.3.tgz", - "integrity": "sha512-+szG18GAzZ3taWTkF0wYsLIgsi+8Mlnq/Vl1AAk9Lr8M6ZhR3yt6oW/nb6+Ow+RFdpI8a0F5n6qynzv3rDDC+w==", + "version": "12.2.4", + "resolved": "https://registry.npmjs.org/textlint/-/textlint-12.2.4.tgz", + "integrity": "sha512-IlBJL4bR9RuqYV+YkQQvOznhmfClGGkuOyxiUaQ4qUj2IaJu2/rXei71x3JAIJF4SLEK7SbMoLVqXIerqIbhGA==", "dev": true, "requires": { "@textlint/ast-node-types": "^12.2.2", @@ -9999,7 +9999,7 @@ "@textlint/feature-flag": "^12.2.3", "@textlint/fixer-formatter": "^12.2.3", "@textlint/kernel": "^12.2.3", - "@textlint/linter-formatter": "^12.2.3", + "@textlint/linter-formatter": "^12.2.4", "@textlint/module-interop": "^12.2.3", "@textlint/textlint-plugin-markdown": "^12.2.3", "@textlint/textlint-plugin-text": "^12.2.3", diff --git a/package.json b/package.json index 4bae989a979..59f8552a581 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ "remark-lint-fenced-code-flag": "^3.1.1", "remark-lint-no-shell-dollars": "^3.1.1", "remark-stringify": "^10.0.2", - "textlint": "^12.2.3", + "textlint": "^12.2.4", "textlint-filter-rule-comments": "^1.2.2", "textlint-rule-common-misspellings": "^1.0.1", "textlint-rule-terminology": "^3.0.4" diff --git a/source/_docs/configuration/templating.markdown b/source/_docs/configuration/templating.markdown index 04b9341e0cf..c44a930b6e8 100644 --- a/source/_docs/configuration/templating.markdown +++ b/source/_docs/configuration/templating.markdown @@ -115,7 +115,7 @@ Entities that are on: {% raw %} ```text -{{ ['light.kitchen', 'light.dinig_room'] | select('is_state', 'on') | list }} +{{ ['light.kitchen', 'light.dining_room'] | select('is_state', 'on') | list }} ``` {% endraw %} diff --git a/source/_integrations/alexa.smart_home.markdown b/source/_integrations/alexa.smart_home.markdown index d7a0d9b73b6..ba259355b24 100644 --- a/source/_integrations/alexa.smart_home.markdown +++ b/source/_integrations/alexa.smart_home.markdown @@ -554,7 +554,7 @@ Users must opt-in to the disarm by voice feature in the Alexa App. Alexa will re Screenshot: Alexa App Security System PIN

-To use the exiting code configured for the Alarm Control Panel the `code` must be 4 digits and the `code_format` attribute must be `FORMAT_NUMBER`. After discovery, the Alexa app will offer the ability to use the existing `code`, or create an additional 4 digit PIN to use with Alexa. +To use the existing code configured for the Alarm Control Panel the `code` must be 4 digits and the `code_format` attribute must be `number`. After discovery, the Alexa app will offer the ability to use the existing `code`, or create an additional 4 digit PIN to use with Alexa. The existing code is never communicated to Alexa from Home Assistant. During disarming, Alexa will ask for a PIN. The PIN spoken to Alexa is relayed to Home Assistant and passed to the `alarm_control_panel.alarm_disarm` service. If the `alarm_control_panel.alarm_disarm` service fails for any reason, it is assumed the PIN was incorrect and reported to Alexa as an invalid PIN. diff --git a/source/_integrations/bluetooth.markdown b/source/_integrations/bluetooth.markdown index 87b4883662b..045293096d9 100644 --- a/source/_integrations/bluetooth.markdown +++ b/source/_integrations/bluetooth.markdown @@ -86,6 +86,7 @@ If you experience an unreliable Bluetooth connection, installing a short USB ext - GMYLE 3340 (BCM20702A0) - HIDEEZ BT0015-01 (CSR8510A10) - IOGEAR GBU521W6 (BCM20702A0) +- INSIGNIA NS-PCY5BMA (BCM20702A0) - Kinivo BTD-400 (BCM20702A0) - LM Technologies LM1010 (BCM20702A0) 📶 - Nuu You BT40 (CSR8510A10) @@ -103,6 +104,7 @@ If you experience an unreliable Bluetooth connection, installing a short USB ext - TRENDnet TBW-107UB (CSR8510A10) - UGREEN CM109 (CSR8510A10) - Warmstor WBT-AD01 (CSR8510A10) +- WAVLINK WL-BT4001 (CSR8510A10) 📶 Denotes external antenna @@ -138,6 +140,7 @@ These adapters generally offer the fastest connect times. - ASUS USB-BT500 (RTL8761BU) - Avantree DG45 (RTL8761BU) +- COMCAST CF-B03 (RTL8761BU) - COMCAST CF-B05 (RTL8761BU) 📶 - EDUP LOVE EP-B3536 (RTL8761BU) 📶 - ISEKIE KW-B3519 (RTL8761BU) @@ -160,6 +163,7 @@ These adapters do not have a reset pin. If they stop responding, there is curren ### Unsupported adapters - Alfa AWUS036EACS (RTL8821CU) - Frequent connection failures and drop outs +- BASEUS BR8651A01 BA04 - Advertisement drops out - Belkin F8T003 ver 2. - Fails to setup and add successfully - EDIMAX EW-7611ULB (RTL8723BU) - Frequent connection failures and drop outs - EDUP EP-AC1661 (RTL8821CU) - Frequent connection failures and drop outs diff --git a/source/_integrations/deluge.markdown b/source/_integrations/deluge.markdown index ce25c32571f..4a1f24edd3f 100644 --- a/source/_integrations/deluge.markdown +++ b/source/_integrations/deluge.markdown @@ -22,7 +22,12 @@ There is currently support for the following device types within Home Assistant: - [Sensor](#sensor) - [Switch](#switch) -To be able to use this integration, you have to enable the following option in deluge settings: Daemon > Allow Remote Connections +## Prerequisites + +To be able to use this integration, you need to do the following: + +1. Enable the following option in deluge settings: Daemon > Allow Remote Connections +2. When set up, the daemon has an account called localclient. Refer [here](https://dev.deluge-torrent.org/wiki/UserGuide/Authentication) to get the password for the local client or add a line in the auth file with your own username and password. Use one of those credentials from there to authenticate the integration with the daemon. {% include integrations/config_flow.md %} diff --git a/source/_integrations/frontend.markdown b/source/_integrations/frontend.markdown index a43e19a11a8..f4ea78e709e 100644 --- a/source/_integrations/frontend.markdown +++ b/source/_integrations/frontend.markdown @@ -51,7 +51,7 @@ frontend: ### Theme format -The frontend integration allows you to create custom themes to influence the look and feel of the user interface. +The frontend integration allows you to create custom themes to influence the look and feel of the user interface. Note that we only officially support the `primary-color` and `accent-color` properties. Although we do our best to keep things working, the behavior of other properties can change between releases. ```yaml # Example configuration.yaml entry diff --git a/source/_integrations/html5.markdown b/source/_integrations/html5.markdown index 69647541d5f..7762388e44d 100644 --- a/source/_integrations/html5.markdown +++ b/source/_integrations/html5.markdown @@ -19,12 +19,6 @@ HTML5 push notifications **do not** work on iOS. -
- -The GCM configuration option is deprecated and stopped working in May 2019, see [https://developers.google.com/cloud-messaging/faq](https://developers.google.com/cloud-messaging/faq). If you are installing this platform for the first time, follow the VAPID configuration steps. To migrate your current installation from GCM to VAPID configuration, follow the instructions below. You can skip the first 3 steps and continue in step 4 with your existing project. You will also need to delete `html5_push_registrations.conf` and [re-enable the notifications in your browser](#setting-up-your-browser). - -
- ## Configuration To enable this platform, add the following lines to your `configuration.yaml` file: @@ -33,30 +27,12 @@ To enable this platform, add the following lines to your `configuration.yaml` fi # Example configuration.yaml entry notify: - platform: html5 - name: NOTIFIER_NAME vapid_pub_key: YOUR_PUBLIC_KEY vapid_prv_key: YOUR_PRIVATE_KEY vapid_email: YOUR_EMAIL ``` -Or - -```yaml -# Example configuration.yaml entry. -# Warning: this option will be deprecated soon! -notify: - - platform: html5 - name: NOTIFIER_NAME - gcm_api_key: YOUR_API_KEY - gcm_sender_id: YOUR_SENDER_ID -``` - {% configuration %} -name: - description: Setting the optional parameter `name` allows multiple notifiers to be created. The notifier will bind to the service `notify.NOTIFIER_NAME`. - required: false - type: string - default: notify vapid_pub_key: description: The VAPID public key generated by Google (this is the key that is immediately visible under "webpush certificates"), [see configuring the platform](#configuring-the-platform). required: true @@ -69,14 +45,6 @@ vapid_email: description: The e-mail account of your Google account associated with your Firebase project, [see configuring the platform](#configuring-the-platform). required: true type: string -gcm_api_key: - description: The API Server key provided to you by Google for Google Cloud Messaging (GCM). - required: true - type: string -gcm_sender_id: - description: The sender ID provided to you by Google for Google Cloud Messaging (GCM). - required: true - type: string {% endconfiguration %} ### Requirements @@ -120,7 +88,7 @@ Assuming the previous test completed successfully and your browser was registere {% my developer_services badge %} 1. Click on the My button above, or open Home Assistant in Chrome or Firefox, open the sidebar and click the Services button at the bottom (shaped like a remote control), located below the Developer Tools. -2. From the Services dropdown, search for your HTML5 notify service (e.g., notify.NOTIFIER_NAME) and select it. +2. From the Services dropdown, search for your HTML5 notify service (notify.html5) and select it. 3. In the Service Data text box enter: `{"message":"hello world"}`, then press the CALL SERVICE button. 4. If everything worked you should see a popup notification. @@ -176,7 +144,7 @@ Example of adding a tag to your notification. This won't create new notification - platform: state entity_id: sensor.sensor action: - service: notify.notify + service: notify.html5 data: message: "Last known sensor state is {{ states('sensor.sensor') }}." data: diff --git a/source/_integrations/twitch.markdown b/source/_integrations/twitch.markdown index 2482bf455aa..1afa8d5e270 100644 --- a/source/_integrations/twitch.markdown +++ b/source/_integrations/twitch.markdown @@ -28,7 +28,7 @@ Before clicking Summit (the broken image below the form), visit the [Twitch dev As __OAuth Redirect URLs__ add `https://twitchapps.com/tokengen/` and click __Create__ . -Back at the Token Generator, click the __Summit__ button, accept the consent screen and get your __OAuth Token__. +Back at the Token Generator, click the __Connect__ button, accept the consent screen and get your __OAuth Token__. ## Configuration diff --git a/source/_redirects b/source/_redirects index fcc2fcce5a7..9b66a5eeb7f 100644 --- a/source/_redirects +++ b/source/_redirects @@ -22,8 +22,8 @@ /energy /home-energy-management /integrations/energy /docs/energy 301! -/amber https://www.crowdsupply.com/nabu-casa/home-assistant-yellow -/yellow https://www.crowdsupply.com/nabu-casa/home-assistant-yellow +/amber https://yellow.home-assistant.io +/yellow https://yellow.home-assistant.io /blog/2021/09/13/home-assistant-amber/ /blog/2021/09/13/home-assistant-yellow/ # Older development pages