Merge branch 'current' into rc

This commit is contained in:
Franck Nijhof 2024-01-03 10:50:27 +01:00
commit f5bf4e738c
No known key found for this signature in database
GPG Key ID: D62583BA8AB11CA3
17 changed files with 111 additions and 60 deletions

View File

@ -3,6 +3,7 @@ FROM mcr.microsoft.com/vscode/devcontainers/ruby:${VARIANT}
ARG NODE_VERSION="lts/*"
RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1"
RUN su vscode -c "/usr/local/rvm/bin/rvm fix-permissions"
# Locale env vars
ENV \
@ -17,7 +18,3 @@ RUN \
ack \
&& echo "en_US UTF-8" > /etc/locale.gen \
&& locale-gen en_US.UTF-8
# Install the specific version of bundler we need
COPY Gemfile.lock ./
RUN gem install bundler -v `awk 'c&&c--;/BUNDLED WITH/{c=1}' Gemfile.lock`

View File

@ -1,16 +1,19 @@
{
"name": "home-assistant.io",
"build": {
"dockerfile": "../Dockerfile",
"dockerfile": "./Dockerfile",
"context": "..",
"args": {
"VARIANT": "2.7",
"NODE_VERSION": "18"
"VARIANT": "3.1",
"NODE_VERSION": "20"
}
},
"appPort": [4000],
"onCreateCommand": "bundle install && npm install",
"containerEnv": { "DEVCONTAINER": "true" },
"containerEnv": {
"DEVCONTAINER": "true",
"BUNDLE_PATH": "vendor/bundle"
},
"customizations": {
"vscode": {
"extensions": [

View File

@ -12,7 +12,7 @@ jobs:
- name: Setting up Node.js
uses: actions/setup-node@v4.0.1
with:
node-version: 16.x
node-version: 20
cache: "npm"
- name: Install dependencies
run: npm install
@ -29,7 +29,7 @@ jobs:
- name: Setting up Node.js
uses: actions/setup-node@v4.0.1
with:
node-version: 16.x
node-version: 20
cache: "npm"
- name: Install dependencies
run: npm install

View File

@ -1 +1 @@
2.7.2
3.1.4

View File

@ -4,7 +4,7 @@
"editorconfig.editorconfig",
"GitHub.vscode-pull-request-github",
"mrmlnc.vscode-scss",
"rebornix.Ruby",
"Shopify.ruby-lsp",
"streetsidesoftware.code-spell-checker",
"taichi.vscode-textlint",
"yzhang.markdown-all-in-one"

View File

@ -4,12 +4,14 @@ ruby '> 2.5.0'
group :development do
gem 'rake', '13.1.0'
gem 'jekyll', '4.3.2'
gem 'jekyll', '4.3.3'
gem 'compass', '1.0.3'
gem 'sass-globbing', '1.1.5'
gem 'stringex', '2.8.6'
# > 2.1.0 causes slowdowns https://github.com/sass/sassc-ruby/issues/189
gem 'sassc', '2.1.0'
gem 'rubocop', '1.59.0'
gem 'ruby-lsp', '0.13.2'
end
group :jekyll_plugins do
@ -19,8 +21,8 @@ group :jekyll_plugins do
gem 'jekyll-toc', '0.18.0'
end
gem 'sinatra', '3.1.0'
gem 'nokogiri', '1.15.5'
gem 'sinatra', '3.2.0'
gem 'nokogiri', '1.16.0'
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
# and associated library

View File

@ -3,6 +3,8 @@ GEM
specs:
addressable (2.8.6)
public_suffix (>= 2.0.2, < 6.0)
ast (2.4.2)
base64 (0.2.0)
chunky_png (1.4.0)
colorator (1.1.0)
commonmarker (0.23.10)
@ -23,14 +25,13 @@ GEM
eventmachine (>= 0.12.9)
http_parser.rb (~> 0)
eventmachine (1.2.7)
eventmachine (1.2.7-x64-mingw32)
ffi (1.16.3)
forwardable-extended (2.6.0)
google-protobuf (3.25.1)
google-protobuf (3.25.1-x86_64-linux)
http_parser.rb (0.8.0)
i18n (1.14.1)
concurrent-ruby (~> 1.0)
jekyll (4.3.2)
jekyll (4.3.3)
addressable (~> 2.4)
colorator (~> 1.0)
em-websocket (~> 0.5)
@ -58,54 +59,76 @@ GEM
nokogiri (~> 1.12)
jekyll-watch (2.2.1)
listen (~> 3.0)
json (2.7.1)
kramdown (2.4.0)
rexml
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
language_server-protocol (3.17.0.3)
liquid (4.0.4)
listen (3.8.0)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
mercenary (0.4.0)
mini_portile2 (2.8.5)
multi_json (1.15.0)
mustermann (3.0.0)
ruby2_keywords (~> 0.0.1)
nokogiri (1.15.5)
mini_portile2 (~> 2.8.2)
nokogiri (1.16.0-x86_64-linux)
racc (~> 1.4)
parallel (1.24.0)
parser (3.2.2.4)
ast (~> 2.4.1)
racc
pathutil (0.16.2)
forwardable-extended (~> 2.6)
prism (0.19.0)
public_suffix (5.0.4)
racc (1.7.3)
rack (2.2.8)
rack-protection (3.1.0)
rack-protection (3.2.0)
base64 (>= 0.1.0)
rack (~> 2.2, >= 2.2.4)
rainbow (3.1.1)
rake (13.1.0)
rb-fsevent (0.11.2)
rb-inotify (0.10.1)
ffi (~> 1.0)
regexp_parser (2.8.3)
rexml (3.2.6)
rouge (4.2.0)
rubocop (1.59.0)
json (~> 2.3)
language_server-protocol (>= 3.17.0)
parallel (~> 1.10)
parser (>= 3.2.2.4)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.8, < 3.0)
rexml (>= 3.2.5, < 4.0)
rubocop-ast (>= 1.30.0, < 2.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 2.4.0, < 3.0)
rubocop-ast (1.30.0)
parser (>= 3.2.1.0)
ruby-lsp (0.13.2)
language_server-protocol (~> 3.17.0)
prism (>= 0.19.0, < 0.20)
sorbet-runtime (>= 0.5.5685)
ruby-progressbar (1.13.0)
ruby2_keywords (0.0.5)
safe_yaml (1.0.5)
sass (3.4.25)
sass-embedded (1.63.6)
google-protobuf (~> 3.23)
rake (>= 13.0.0)
sass-embedded (1.63.6-x64-mingw32)
google-protobuf (~> 3.23)
sass-embedded (1.69.7-x86_64-linux-gnu)
google-protobuf (~> 3.25)
sass-globbing (1.1.5)
sass (>= 3.1)
sassc (2.1.0)
sassc (2.1.0-x86_64-linux)
ffi (~> 1.9)
sassc (2.1.0-x64-mingw32)
ffi (~> 1.9)
sinatra (3.1.0)
sinatra (3.2.0)
mustermann (~> 3.0)
rack (~> 2.2, >= 2.2.4)
rack-protection (= 3.1.0)
rack-protection (= 3.2.0)
tilt (~> 2.0)
sorbet-runtime (0.5.11164)
stringex (2.8.6)
terminal-table (3.0.2)
unicode-display_width (>= 1.1.1, < 3)
@ -118,21 +141,22 @@ GEM
webrick (1.8.1)
PLATFORMS
ruby
x64-mingw32
x86_64-linux
DEPENDENCIES
compass (= 1.0.3)
jekyll (= 4.3.2)
jekyll (= 4.3.3)
jekyll-commonmark (= 1.4.0)
jekyll-paginate (= 1.1.0)
jekyll-sitemap (= 1.4.0)
jekyll-toc (= 0.18.0)
nokogiri (= 1.15.5)
nokogiri (= 1.16.0)
rake (= 13.1.0)
rubocop (= 1.59.0)
ruby-lsp (= 0.13.2)
sass-globbing (= 1.1.5)
sassc (= 2.1.0)
sinatra (= 3.1.0)
sinatra (= 3.2.0)
stringex (= 2.8.6)
tzinfo (~> 2.0)
tzinfo-data
@ -141,4 +165,4 @@ RUBY VERSION
ruby 2.6.2p47
BUNDLED WITH
2.2.28
2.5.3

View File

@ -7,12 +7,7 @@ description: The Conditional card displays another card based on conditions.
The conditional card displays another card based on conditions.
<p class='img'>
<img src='/images/dashboards/conditional_card.gif' alt='Screenshot of the conditional card'>
Screenshot of the conditional card.
</p>
Note: if there are multiple conditions there will be treated as an 'and' condition. This means that for the card to show, _all_ conditions must be met.
![Screenshot of the conditional card](/images/dashboards/conditional_card.gif)
{% include dashboard/edit_dashboard.md %}
Note that while editing the dashboard, the card will always be shown, so be sure to exit editing mode to test the conditions.
@ -40,6 +35,7 @@ card:
## Examples
Only show when all the conditions are met:
```yaml
type: conditional
conditions:
@ -62,6 +58,25 @@ card:
- light.bed_light
```
Example condition where only one of the conditions needs to be met:
```yaml
type: conditional
conditions:
- condition: or
conditions:
- condition: state
entity: binary_sensor.co_alert
state: 'on'
- condition: state
entity: binary_sensor.rookmelder
state: 'on'
card:
type: entities
entities:
- binary_sensor.co_alert
- binary_sensor.rookmelder
```
## Card conditions
### State

View File

@ -3,7 +3,7 @@ title: "YAML"
description: "Details about YAML to configure Home Assistant."
---
Home Assistant uses the [YAML](https://yaml.org/) syntax for configuration. YAML might take a while to get used to but is really powerful in allowing you to express complex configurations.
Home Assistant uses the [YAML](https://yaml.org/) syntax for configuration. YAML might take a while to get used to but is powerful in allowing you to express complex configurations.
While more and more integrations are configured through the UI, for some, you will add code in your [`configuration.yaml`](/docs/configuration/) file to specify its settings.
@ -21,15 +21,15 @@ notify:
The basics of YAML syntax are block collections and mappings containing key-value pairs. Each item in a collection starts with a `-` while mappings have the format `key: value`. This is somewhat similar to a Hash table or more specifically a dictionary in Python. These can be nested as well. **Beware that if you specify duplicate keys, the last value for a key is used**.
Note that indentation is an important part of specifying relationships using YAML. Things that are indented are nested "inside" things that are one level higher. So in the above example, `platform: pushbullet` is a property of (nested inside) the `notify` integration.
In YAML, indentation is important for specifying relationships. Indented lines are nested inside lines that are one level higher. In the above example, `platform: pushbullet` is a property of (nested inside) the `notify` integration.
Getting the right indentation can be tricky if you're not using an editor with a fixed width font. Tabs are not allowed to be used for indentation. Convention is to use 2 spaces for each level of indentation.
Getting the right indentation can be tricky if you're not using an editor with a fixed-width font. Tabs are not allowed to be used for indentation. The convention is to use 2 spaces for each level of indentation.
You can use the online service [YAML Validator](https://codebeautify.org/yaml-validator/) to check if your YAML syntax is correct before loading it into Home Assistant which will save you some time. If you do so, be aware that this is a third-party service and is not maintained by the Home Assistant community.
To check if your YAML syntax is correct before loading it into Home Assistant, you can use the third-party service [YAML Validator](https://codebeautify.org/yaml-validator/) (not maintained by the Home Assistant community).
<div class='note'>
Please pay attention to not storing private data (passwords, API keys, etc.) directly in your `configuration.yaml` file. Private data can be stored in either a [separate file](/docs/configuration/secrets/) or in [environmental variables](/docs/configuration/yaml/#using-environment-variables), which circumvents this security problem.
Pay attention to not storing private data (passwords, API keys, etc.) directly in your `configuration.yaml` file. Private data can be stored in either a [separate file](/docs/configuration/secrets/) or in [environmental variables](/docs/configuration/yaml/#using-environment-variables), which circumvents this security problem.
</div>
@ -76,7 +76,7 @@ example:
#### Default value
If an environment variable is not set, you can fallback to a default value.
If an environment variable is not set, you can fall back to a default value.
```yaml
example:

View File

@ -1044,7 +1044,6 @@ Only temperature sensors are configured at this time.
- _"Alexa, what's the temperature in the kitchen?"_
- _"Alexa, what's the upstairs temperature?"_
- _"Alexa, what's the temperature of my ex-girlfriend's heart?"_
### Switch, Input Boolean

View File

@ -16,6 +16,9 @@ This platform allows you to detect presence by looking at connected devices to a
Supported devices (tested):
- Aruba AP-105
- Aruba AP-505
- Aruba AP-515
- Aruba IAP-315
- Aruba IAP-335
- Aruba Instant IAP-275

View File

@ -28,6 +28,6 @@ In addition to a lock entity, each added dKey lock will also have:
<div class='note warning'>
The Dormakaba dKey lock is currently not working with USB dongles or built-in Bluetooth radios, only [ESPHome Bluetooth proxies](/integrations/bluetooth/#remote-adapters-bluetooth-proxies) work reliably.
The Dormakaba dKey lock is currently not working with USB dongles or built-in Bluetooth radios, only [ESPHome Bluetooth proxies](/integrations/bluetooth/#remote-adapters-bluetooth-proxies) configured to allow active connections work reliably.
</div>

View File

@ -13,7 +13,7 @@ ha_config_flow: true
ha_integration_type: integration
---
This is a sensor to collect information from your Growatt inverters using [Growatt server](https://server.growatt.com/) by default. It is possible to specify an alternative endpoint server at configuration time e.g., [SMTEN](https://server.smten.com/).
This is a sensor to collect information from your Growatt inverters using [Growatt server](https://server.growatt.com/) by default. It is possible to specify an alternative endpoint server at configuration time e.g., [SMTEN](https://server.smten.com/). To see the latest supported servers, add the integration in Home Assistant to see the configuration options.
This will log into your Growatt account and grab the first "Plant", after which it collects the inverters on this plant and creates sensors for these inverters as well as total sensors.

View File

@ -23,6 +23,14 @@ This integration also offers a button to pick up and then hang up the call to pr
{% include integrations/config_flow.md %}
## Compatibility
Reported models with this integration include that work:
- [StarTech.com USB56KEMH2](https://www.startech.com/en-us/networking-io/usb56kemh2)
Devices that did not work:
- [StarTech.com USB56KEM3](https://www.startech.com/en-us/networking-io/usb56kem3)
## Examples
An example automation:

View File

@ -14,7 +14,7 @@ ha_platforms:
ha_integration_type: integration
---
[OPNsense](https://opnsense.org/) is an open source HardenedBSD based firewall
[OPNsense](https://opnsense.org/) is an open source FreeBSD based firewall
and routing platform. There is currently support for the following device types
within Home Assistant:

View File

@ -51,10 +51,10 @@ This sensor is enabled by default. The default polling interval is 30 seconds.
The sensor exposes the different round trip times in milliseconds measured by `ping` as attributes:
- `round_trip_time_mdev`
- `round_trip_time_avg`
- `round_trip_time_min`
- `round_trip_time_max`
- `round_trip_time_mdev` - the standard deviation
- `round_trip_time_avg` - the average round trip time
- `round_trip_time_min` - the shortest round trip time
- `round_trip_time_max` - the longest round trip time
<div class='note'>
When run on Windows systems, the round trip time attributes are rounded to the nearest millisecond and the mdev value is unavailable.

View File

@ -107,7 +107,7 @@ Change an active timer. This changes the duration of the timer with the duration
### Service `timer.pause`
Pause a running timer. This will retain the remaining duration for later continuation. You can also use `entity_id: all` and all active timers will be paused.
Pause a running timer. This will retain the remaining duration for later continuation. To resume a timer use the `timer.start` service without passing a duration. You can also use `entity_id: all` and all active timers will be paused.
| Service data attribute | Optional | Description |
| ---------------------- | -------- | ----------- |