Skip to content

Conversation

@gjohansson-ST
Copy link
Member

@gjohansson-ST gjohansson-ST commented Jul 7, 2025

Proposed change

Adds target_temperature_range capability for water_heater
Core PR: home-assistant/core#148222

Type of change

  • Document existing features within Home Assistant
  • Document new or changing features for which there is an existing pull request elsewhere
  • Spelling or grammatical corrections, or rewording for improved clarity
  • Changes to the backend of this documentation
  • Remove stale or deprecated documentation

Checklist

  • I have read and followed the documentation guidelines.
  • I have verified that my changes render correctly in the documentation.

Additional information

  • This PR fixes or closes issue: fixes #
  • Link to relevant existing code or pull request: #148222

Summary by CodeRabbit

  • New Features

    • Water heater entity now supports setting a temperature range in addition to single target temperatures via the new TARGET_TEMPERATURE_RANGE feature.
  • Documentation

    • Added documentation and blog post detailing the expanded water heater temperature range capabilities and usage examples.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jul 7, 2025

📝 Walkthrough

Walkthrough

Documentation updates for water heater entity to document support for setting temperature ranges. Includes updates to the feature documentation table and a new blog post demonstrating the TARGET_TEMPERATURE_RANGE feature with code examples.

Changes

Cohort / File(s) Summary
Documentation Updates
docs/core/entity/water-heater.md
Added TARGET_TEMPERATURE_RANGE to Supported features table with description; updated set_temperature method documentation to indicate it can set single temperature or temperature range.
Blog Post
blog/2025-12-01-water-heater-now-supports-set-a-temp-range.md
New blog post documenting WaterHeaterEntity temperature range feature; includes front matter and Python example using ATTR_TARGET_TEMP_LOW and ATTR_TARGET_TEMP_HIGH attributes.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~3 minutes

  • No code changes; documentation and blog content only
  • Simple feature documentation additions and formatting adjustments

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately summarizes the main change: adding target temperature range support to the water heater documentation.
Description check ✅ Passed The description follows the template structure with all required sections completed, including a clear proposed change, type of change selection, checklist items, and relevant links to the core PR.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch gj-20250707-01

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🧹 Nitpick comments (2)
docs/core/entity/water-heater.md (1)

62-62: Use imperative mood in method description

Microsoft style: start with the goal.
Change to “Set the temperature or temperature range the water heater heats water to.”

blog/2025-07-07-water-heater-now-supports-set-a-temp-range.md (1)

11-12: Grammar—plural agreement

“Entities needs to set” → “Entities need to set” (or “Entities must set” for stronger imperative).

📜 Review details

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
Cache: Disabled due to data retention organization setting
Knowledge Base: Disabled due to data retention organization setting

📥 Commits

Reviewing files that changed from the base of the PR and between 8de9ba5 and e86c6f9.

📒 Files selected for processing (2)
  • blog/2025-07-07-water-heater-now-supports-set-a-temp-range.md (1 hunks)
  • docs/core/entity/water-heater.md (1 hunks)
🧰 Additional context used
📓 Path-based instructions (6)
`*/**(html|markdown|md)`: - For instructional content in documentation, use a di...

*/**(html|markdown|md): - For instructional content in documentation, use a direct and authoritative tone. Avoid expressions of politeness such as 'may' or 'please', and ensure the goal of the instruction is fronted.

  • Apply the Microsoft Style Guide to ensure documentation maintains clarity and conciseness.
  • In step-by-step instructions, front the location phrase in the instructional sentence.
  • In step-by-step instructions, front the 'goal' in the instructional sentence.
  • In step-by-step instructions, if in doubt what to front, front the 'goal' before the location phrase in the instructional sentence.
  • do not hyphenate terms like 'top-right' or 'bottom-left' with 'corner'

⚙️ Source: CodeRabbit Configuration File

List of files the instruction was applied to:

  • blog/2025-07-07-water-heater-now-supports-set-a-temp-range.md
`*/**(html|markdown|md)`: - Use bold to mark UI strings. - If "" are used to mark UI strings, replace them by bold.

*/**(html|markdown|md): - Use bold to mark UI strings.

  • If "" are used to mark UI strings, replace them by bold.

⚙️ Source: CodeRabbit Configuration File

List of files the instruction was applied to:

  • blog/2025-07-07-water-heater-now-supports-set-a-temp-range.md
`*/**(html|markdown|md)`: - Be brief in your replies and don't add fluff like "thank you for..." and "Please let me know if"

*/**(html|markdown|md): - Be brief in your replies and don't add fluff like "thank you for..." and "Please let me know if"

⚙️ Source: CodeRabbit Configuration File

List of files the instruction was applied to:

  • blog/2025-07-07-water-heater-now-supports-set-a-temp-range.md
`*/**(html|markdown|md)`: - Use sentence-style capitalization also in headings.

*/**(html|markdown|md): - Use sentence-style capitalization also in headings.

⚙️ Source: CodeRabbit Configuration File

List of files the instruction was applied to:

  • blog/2025-07-07-water-heater-now-supports-set-a-temp-range.md
`*/**(html|markdown|md)`: do not comment on HTML used for icons

*/**(html|markdown|md): do not comment on HTML used for icons

⚙️ Source: CodeRabbit Configuration File

List of files the instruction was applied to:

  • blog/2025-07-07-water-heater-now-supports-set-a-temp-range.md
`*/**(html|markdown|md)`: Avoid flagging inline HTML for embedding videos in future reviews for this repository.

*/**(html|markdown|md): Avoid flagging inline HTML for embedding videos in future reviews for this repository.

⚙️ Source: CodeRabbit Configuration File

List of files the instruction was applied to:

  • blog/2025-07-07-water-heater-now-supports-set-a-temp-range.md
🪛 markdownlint-cli2 (0.17.2)
docs/core/entity/water-heater.md

50-50: Table pipe style
Expected: leading_only; Actual: leading_and_trailing; Unexpected trailing pipe

(MD055, table-pipe-style)


51-51: Table pipe style
Expected: leading_only; Actual: leading_and_trailing; Unexpected trailing pipe

(MD055, table-pipe-style)


52-52: Table pipe style
Expected: leading_only; Actual: leading_and_trailing; Unexpected trailing pipe

(MD055, table-pipe-style)


53-53: Table pipe style
Expected: leading_only; Actual: leading_and_trailing; Unexpected trailing pipe

(MD055, table-pipe-style)


54-54: Table pipe style
Expected: leading_only; Actual: leading_and_trailing; Unexpected trailing pipe

(MD055, table-pipe-style)


55-55: Table pipe style
Expected: leading_only; Actual: leading_and_trailing; Unexpected trailing pipe

(MD055, table-pipe-style)


56-56: Table pipe style
Expected: leading_only; Actual: leading_and_trailing; Unexpected trailing pipe

(MD055, table-pipe-style)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
  • GitHub Check: Redirect rules - developers-home-assistant
  • GitHub Check: Header rules - developers-home-assistant
  • GitHub Check: Pages changed - developers-home-assistant

@home-assistant home-assistant deleted a comment from coderabbitai bot Nov 22, 2025
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (2)
blog/2025-12-01-water-heater-now-supports-set-a-temp-range.md (2)

9-9: Clarify the feature scope.

The phrasing "in addition to only setting a temperature" is unclear. State directly what the new capability is.

-As of Home Assistant Core 2025.12, the `WaterHeaterEntity` now also supports setting a temperature range in addition to only setting a temperature.
+As of Home Assistant Core 2025.12, the `WaterHeaterEntity` now supports setting a temperature range in addition to setting a single temperature.

11-11: Tighten the instructional language.

The phrasing is indirect and contains a grammar error. Use imperative, direct language.

-Entities needs to set the `TARGET_TEMPERATURE_RANGE` supported feature to enable use of setting a target temperature range.
+To support temperature ranges, set the `TARGET_TEMPERATURE_RANGE` supported feature.
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

Cache: Disabled due to data retention organization setting

Knowledge base: Disabled due to data retention organization setting

📥 Commits

Reviewing files that changed from the base of the PR and between f7666ff and 72ac91b.

📒 Files selected for processing (1)
  • blog/2025-12-01-water-heater-now-supports-set-a-temp-range.md (1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
*/**(html|markdown|md)

⚙️ CodeRabbit configuration file

*/**(html|markdown|md): - For instructional content in documentation, use a direct and authoritative tone. Avoid expressions of politeness such as 'may' or 'please', and ensure the goal of the instruction is fronted.

  • Apply the Microsoft Style Guide to ensure documentation maintains clarity and conciseness.
  • In step-by-step instructions, front the location phrase in the instructional sentence.
  • In step-by-step instructions, front the 'goal' in the instructional sentence.
  • In step-by-step instructions, if in doubt what to front, front the 'goal' before the location phrase in the instructional sentence.
  • do not hyphenate terms like 'top-right' or 'bottom-left' with 'corner'

*/**(html|markdown|md): - Use bold to mark UI strings.

  • If "" are used to mark UI strings, replace them by bold.

  • Be brief in your replies and don't add fluff like "thank you for..." and "Please let me know if"

  • Use sentence-style capitalization also in headings.

do not comment on HTML used for icons

Avoid flagging inline HTML for embedding videos in future reviews for this repository.

Files:

  • blog/2025-12-01-water-heater-now-supports-set-a-temp-range.md
🔇 Additional comments (1)
blog/2025-12-01-water-heater-now-supports-set-a-temp-range.md (1)

13-38: Code example is clear and helpful.

The imports are explicit, the class structure demonstrates the feature well, and the async method shows proper usage of the new attributes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants