core icon indicating copy to clipboard operation
core copied to clipboard

Raise on non-string unique id for config entry

Open gjohansson-ST opened this issue 1 year ago • 5 comments

Breaking change

Integrations trying to save a Config Entry with a non-string unique id will now raise instead of as previously only log a warning (deprecation started 6 months ago)

Proposed change

Raise if non-string unique id in config entry

Type of change

  • [ ] Dependency upgrade
  • [ ] Bugfix (non-breaking change which fixes an issue)
  • [ ] New integration (thank you!)
  • [ ] New feature (which adds functionality to an existing integration)
  • [ ] Deprecation (breaking change to happen in the future)
  • [x] Breaking change (fix/feature causing existing functionality to break)
  • [ ] Code quality improvements to existing code or addition of tests

Additional information

  • This PR fixes or closes issue: fixes #
  • This PR is related to issue:
  • Link to documentation pull request:

Checklist

  • [x] The code change is tested and works locally.
  • [x] Local tests pass. Your PR cannot be merged unless tests pass
  • [x] There is no commented out code in this PR.
  • [x] I have followed the development checklist
  • [x] I have followed the perfect PR recommendations
  • [x] The code has been formatted using Ruff (ruff format homeassistant tests)
  • [x] Tests have been added to verify that the new code works.

If user exposed functionality or configuration variables are added/changed:

If the code communicates with devices, web services, or third-party tools:

  • [x] The manifest file has all fields filled out correctly.
    Updated and included derived files by running: python3 -m script.hassfest.
  • [x] New or updated dependencies have been added to requirements_all.txt.
    Updated by running python3 -m script.gen_requirements_all.
  • [x] For the updated dependencies - a link to the changelog, or at minimum a diff between library versions is added to the PR description.

To help with the load of incoming pull requests:

gjohansson-ST avatar Sep 14 '24 10:09 gjohansson-ST

This is wrong. Only non-hashable was previously logging. int and such only started logging this month (not yet released)

epenet avatar Sep 14 '24 11:09 epenet

I read the year incorrectly on the second comment. I'll address that.

gjohansson-ST avatar Sep 14 '24 13:09 gjohansson-ST

Side note: see #125602 that I had started to work on before getting sidetracked... But I'm happy for this one to take precedence.

epenet avatar Sep 16 '24 05:09 epenet

Side note: see #125602 that I had started to work on before getting sidetracked... But I'm happy for this one to take precedence.

If you think mine is more complete then let's do that but I don't mind either or. My only question at the moment is if it makes sense to raise in get_entry_by_domain_and_unique_id() for non-hashable or if it should simply just return nothing in that case.

gjohansson-ST avatar Sep 17 '24 15:09 gjohansson-ST

Please take a look at the requested changes, and use the Ready for review button when you are done, thanks :+1:

Learn more about our pull request process.

home-assistant[bot] avatar Sep 22 '24 19:09 home-assistant[bot]

I would prefer this PR to mine (https://github.com/home-assistant/core/pull/128534) as it is less nested.

jpbede avatar Oct 21 '24 17:10 jpbede