Commit Graph

598 Commits (9f9873b39af25de1e0603fdfa80da900d25ebe5f)

Author SHA1 Message Date
epenet 1225c5e97d
Add enum util (#87082)
* Add enum helper

* docstring

* Move to util

* Add use case
2023-02-01 15:00:27 +01:00
Franck Nijhof 3b5fd4bd06
Enable Ruff TRY004 (#86811) 2023-01-30 14:06:52 +01:00
epenet 561fc2d771
Remove deprecated unit system properties (#86643)
* Remove deprecated unit system properties

* Fix tests
2023-01-27 12:09:26 +01:00
SgtBatten 0ccab19d2c
Add Mega Joule as valid unit of energy (#86055)
* Add Mega joule

* Reorder valid energy types

Alphabetical

* Add Mega Joule

* Add Mega Joule as valid energy unit

* Add Mega Joule

* Add Mega Joule as a Unit of Measurement to Energy

* Update tests

* Update tests

* Update number docstring

Co-authored-by: Roving Ronin <108674933+Roving-Ronin@users.noreply.github.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2023-01-25 14:13:42 +01:00
Marc Mueller 8abce25948
Update Union typing (4) [Py310] (#86427) 2023-01-23 09:04:40 +01:00
Marc Mueller 45b4b0e990
Import `ParamSpec` from typing [Py310] (#86413)
* Import ParamSpec from typing [Py310]

* Update additional imports
2023-01-23 07:28:43 +01:00
Franck Nijhof 79b52a2b41
Stricter pylint message control (#86154) 2023-01-20 13:47:55 +01:00
Erik Montnemery f93bbd55ba
Improve logging shutdown (#85812)
* Improve logging shutdown

* Update test
2023-01-17 20:06:25 +01:00
Erik Montnemery b0d4b73874
Add unitless unit converter (#85694)
* Add unitless unit converter

* Adjust type hints

* Adjust tests

* Rename to UnitlessRatioConverter
2023-01-12 09:20:00 +01:00
Franck Nijhof 7adb8d5ddc
Code styling tweaks to core utils & YAML loader (#85433)
Code styling tweaks to core utils
2023-01-08 22:01:55 -08:00
J. Nick Koston d81febd3f4
Small speed up to frequently called datetime functions (#85399) 2023-01-08 09:42:29 -10:00
SukramJ 005bc8994d
Add mA to SensorDeviceClass.CURRENT units (#84492)
fixes undefined
2022-12-30 13:55:14 +01:00
Jan Bouwhuis b2388b74d9
Add mV as a unit for voltage and enable conversions (#84805)
fixes undefined
2022-12-30 12:51:05 +01:00
epenet 6261994fcf
Enable unit conversion for DATA_SIZE (#84699) 2022-12-29 09:58:15 +01:00
epenet 46e02ebaff
Enable unit conversion for DATA_RATE (#84698) 2022-12-28 21:49:00 +01:00
Franck Nijhof d4f69a3652
String formatting and max line length - Part 7 (#84532)
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2022-12-27 11:18:56 +01:00
Marc Mueller 19acbf0d2a
Update types packages (#84381) 2022-12-21 19:15:55 +01:00
epenet d6fc2d9452
Prevent use of deprecated units (#83384)
* Prevent use of deprecated units

* Adjust obsolete util

* More units

* Add FREQUENCY

* Adjust pylint ignore

* Add ELECTRIC (current/potential)

* Add TIME

* Adjust units
2022-12-21 15:24:11 +01:00
Michaël Arnauts 7142b4ecac
Fixes some grammar mistakes (#84283) 2022-12-20 11:10:31 +01:00
epenet f4c13645d2
Add support for CCF volume unit (#84029) 2022-12-19 14:57:04 +01:00
epenet 4a848e8222
Add stones to mass units (#83933) 2022-12-13 17:35:14 +01:00
Marc Mueller 0e95875912
Improve ignore_variance typing (#83927) 2022-12-13 15:22:23 +01:00
epenet 583b4aef07
Enable automatic conversion for pressures (#83525)
* Enable automatic conversion between bar and psi

* Fix tests

* Fix mazda tests

* Fix oncue tests

* Adjust US pressures

* Adjust metric pressures

* Adjust tests

* Adjust tests
2022-12-12 12:42:35 +01:00
epenet b172abaeeb
Add new atmospheric pressure device class (#83455)
* Add new atmospheric pressure device class

* Translations

* Automatic conversion

* Convert all pressure units
2022-12-09 08:02:53 +01:00
epenet 91d6d620c2
Use new unit enums in alexa (#83409)
* Use new unit enums in alexa

* Adjust for mypy
2022-12-06 17:31:40 +01:00
epenet eb13f2b724
Use UnitOfVolume in unit conversion (#83292) 2022-12-05 16:56:05 +01:00
epenet 4ad9633dfb
Use new unit enums in weather entity (#82937) 2022-11-29 18:10:31 +01:00
epenet dd960c4e62
Add precipitation device class (#81145) 2022-11-18 12:41:33 +01:00
Aarni Koskela 8038485ca4
Use partition instead of split where possible in core (#81806) 2022-11-15 21:45:48 +01:00
Aarni Koskela fa9a51e528
Use os.path.dirname() for getting the directory name of a path (#81504) 2022-11-14 15:21:35 +01:00
Marc Mueller 0c8eeaa643
Update mypy to 0.990 (#81783)
* Update mypy to 0.990

* Remove type ignore - overriding attr with property (13475)

* Remove type ignores - hasattr (13544)

* Adjust type ignore - assignment (13549)

* New error code - type-abstract (13785)

* Disable annotation-unchecked (13851)
2022-11-08 14:41:39 +01:00
J. Nick Koston 1589c06203
Significantly reduce clock_gettime syscalls on platforms with broken vdso (#81257) 2022-10-31 09:35:08 -04:00
epenet 2a2e097e17
Use unit enums in unit utilities (#81030) 2022-10-26 20:47:17 +02:00
epenet 842cb18d39
Migrate energy units to an enum (#80998) 2022-10-26 13:56:51 +02:00
Erik Montnemery 352976fd1d
Add rules for converting volumes (#80951)
* Add rules for converting volumes

* Use SensorDeviceClass in new tests

* Tweak tests

* Update flo tests

* Update sensor tests
2022-10-26 10:29:33 +02:00
epenet 7838bb3ebe
Replace new PRECIPITATION_INTENSITY with enum (#80653) 2022-10-25 16:45:45 +02:00
Erik Montnemery 727eccfec4
Add GJ as supported unit for energy sensors (#80870)
* Add GJ as supported unit for energy sensors

* Update homeassistant/const.py

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-10-25 16:43:00 +02:00
epenet 0018939142
Adjust unit_system type hints (#80946) 2022-10-25 15:56:18 +02:00
Erik Montnemery b07e1281da
Add rules for converting speeds (#80943)
* Add rules for converting speeds

* Update metoffice wind speed sensors to prefer mph

* Don't convert speeds measured in knots
2022-10-25 14:53:59 +02:00
Erik Montnemery aea0067e49
Add additional rules for converting distances (#80940)
* Add additional rules for converting distances

* Convert in to mm

* Adjust existing tests

* Add test
2022-10-25 12:51:23 +02:00
Erik Montnemery 6979cd95b0
Add suggested_unit_of_measurement attribute to sensors (#80638)
* Add suggested_unit_of_measurement attribute to sensors

* Lazy calculation of initial entity options

* Add type alias for entity options

* Small tweak

* Add tests

* Store suggested_unit_of_measurement in its own option key

* Adapt to renaming of IMPERIAL_SYSTEM

* Fix rebase mistakes

* Apply suggestions from code review

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>

Co-authored-by: epenet <6771947+epenet@users.noreply.github.com>
2022-10-24 16:08:02 +02:00
epenet 8a1cc05e0c
Enforce kwargs in unit system initialisation (#80620)
* Enforce kwargs in unit system initialisation

* Fix tests

* Sort kwargs in unit_system
2022-10-20 10:43:32 +02:00
epenet 9afb4c6c9e
Adjust precipitation units (#79780)
* Adjust precipitation units

* Use PRECIPITATION_INTENSITY

* Revert isy994

* Adjust SensorDeviceClass docstring

* Adjust comment
2022-10-19 14:35:49 +02:00
epenet 67d1dde69f
Rename IMPERIAL_SYSTEM to US_CUSTOMARY_SYSTEM (#80253)
* Rename IMPERIAL_SYSTEM

* Deprecate is_metric property and adjust tests

* Adjust unit_system config validation

* Add yaml tests

* Add tests for private name

* Fix incorrect rebase

* Adjust docstring

* Add store migration

* Update unit_system.py

* Minimise test tweaks

* Fix tests

* Add conversion to migration

* Rename new key and adjust tests

* Adjust websocket_detect_config

* Move original_unit_system tracking to subclass
2022-10-19 13:31:08 +02:00
epenet bff5d1123f
Deprecate CONF_UNIT_SYSTEM_*** constants (#80320)
* Deprecate CONF_UNIT_SYSTEM_*** constants

* Adjust pylint plugin

* Add tests

* Remove single-use function

* Revert logic change

* Revert "Revert logic change"

This reverts commit 60959a0050.

* Tweak again
2022-10-14 16:50:04 +02:00
epenet 6a757662e4
Deprecate is_metric property of unit system (#80313) 2022-10-14 13:44:18 +02:00
epenet 4dd0c079d5
Deprecate name property of unit system (#80257) 2022-10-14 12:06:14 +02:00
G Johansson 4cf0f9b197
Fix incorrect deprecation year for conversion utils (#80195)
Fix incorrect depr year
2022-10-13 00:06:23 +02:00
epenet aa0bb9c3d2
Improve precision in pressure conversion (#79362)
* Improve precision in pressure conversion

* Use _STANDARD_GRAVITY

* Add again pytest.approx
2022-10-06 12:48:31 +02:00
Erik Montnemery 47d0598e75
Use Kelvin as the preferred color temperature unit (#79591)
* Use Kelvin as the preferred white temperature unit

* Update homekit

* Adjust tests
2022-10-06 12:22:39 +02:00