Erik Montnemery
69875cbd11
Improve sensor statistics validation ( #56892 )
2021-10-04 09:47:44 -07:00
Erik Montnemery
6af1a835e6
Optimize statistics generation ( #56821 )
...
* Optimize statistics generation
* pylint
2021-09-30 17:14:36 +02:00
Erik Montnemery
6954614e62
Warn if total_increasing sensor has negative states ( #56564 )
2021-09-30 07:49:16 -07:00
Erik Montnemery
8c3fc95fb8
Fallback to state machine in statistics ( #56785 )
2021-09-29 14:57:16 -07:00
Erik Montnemery
40ecf22bac
Remove automatic splitting of net meters from statistics ( #56772 )
2021-09-29 17:20:17 +02:00
Erik Montnemery
58f465f271
Don't reset meter when last_reset is set to None ( #56609 )
2021-09-27 12:17:09 +02:00
Erik Montnemery
7452998081
Convert last_reset timestamps to UTC ( #56561 )
...
* Convert last_reset timestamps to UTC
* Add test
* Apply suggestion from code review
2021-09-24 09:16:50 +02:00
Erik Montnemery
8c5efafdd8
Add 5-minute statistics for sensors ( #56006 )
...
* Add 5-minute statistics for sensors
* Address pylint issues
* Black
* Apply suggestion from code review
* Apply suggestions from code review
* Improve tests
2021-09-16 10:57:15 +02:00
Erik Montnemery
d2a9f7904a
Include end time of statistics data points in API response ( #56063 )
...
* Include end time of statistics data points in API response
* Correct typing
* Update tests
2021-09-13 10:02:24 +02:00
Erik Montnemery
80fd330479
Add sum_decrease and sum_increase statistics ( #55850 )
2021-09-08 23:35:53 -07:00
Erik Montnemery
232943c93d
Add significant change support to AQI type sensors ( #55833 )
2021-09-08 12:47:48 -07:00
Erik Montnemery
27764e9985
Fix handling of imperial units in long term statistics ( #55959 )
2021-09-08 08:08:48 -07:00
Erik Montnemery
9f1e503784
Do not allow `inf` or `nan` sensor states in statistics ( #55943 )
2021-09-08 08:05:16 -07:00
Erik Montnemery
b99a22cd4d
Re-add state_class total to sensor ( #55103 )
...
* Re-add state_class total to sensor
* Make energy cost sensor enforce state_class total_increasing
* Bump deprecation of last_reset for state_class measurement
* Correct rebase mistakes
2021-09-06 18:28:58 +02:00
Erik Montnemery
38d42de2c0
Handle negative numbers in sensor long term statistics ( #55708 )
...
* Handle negative numbers in sensor long term statistics
* Use negative states in tests
2021-09-04 10:47:42 +02:00
Erik Montnemery
93c086d830
Correct sum statistics when only last_reset has changed ( #55498 )
...
Co-authored-by: Paulus Schoutsen <balloob@gmail.com>
2021-08-31 21:30:52 -07:00
Erik Montnemery
5d1a193eca
Improve log for sum statistics ( #55502 )
2021-08-31 19:15:22 +02:00
Erik Montnemery
f9225bad5f
Make new cycles for sensor sum statistics start with 0 as zero-point ( #55473 )
2021-08-31 10:45:17 +02:00
Erik Montnemery
722aa0895e
Improve statistics error messages when sensor's unit is changing ( #55436 )
...
* Improve error messages when sensor's unit is changing
* Improve test coverage
2021-08-30 12:51:46 +02:00
Erik Montnemery
7e70252de5
Handle statistics for sensor with changing state class ( #55316 )
2021-08-27 16:18:49 +02:00
Erik Montnemery
0a07ff4d23
Warn if a sensor with state_class_total has a decreasing value twice ( #55251 )
2021-08-26 14:27:14 +02:00
Erik Montnemery
bb42eb1176
Warn if a sensor with state_class_total has a decreasing value ( #55197 )
2021-08-25 13:01:55 +02:00
Erik Montnemery
ffbd2d79c8
Generate statistics for all sensors with a supported state_class ( #54882 )
...
* Generate statistics for all sensors
* Fix bugs, add tests
* Address review comments
* Cleanup warnings
* Simplify tests
* Simplify selection of statistics
* Fix tests
2021-08-25 13:00:35 +02:00
Paulus Schoutsen
1e05c81fe6
Fix recorder test ( #55169 )
...
Co-authored-by: Erik <erik@montnemery.com>
2021-08-25 08:48:13 +02:00
Erik Montnemery
fa9f91325c
Allow small dip in total_increasing sensor without detecting a reset ( #55153 )
2021-08-24 17:23:55 +02:00
Erik Montnemery
8877f37da0
Fix statistics for sensors setting last_reset ( #55136 )
...
* Re-add state_class total to sensor
* Make energy cost sensor enforce state_class total_increasing
* Drop state_class total
* Only report energy sensor issues once
2021-08-24 17:02:34 +02:00
Jc2k
2dd4de060b
Add device class for volatile organic compounds ( #55050 )
2021-08-23 11:14:43 +02:00
Erik Montnemery
2fa07777cd
Warn if unit_of_measurement is set on instances of SensorEntityDescription ( #54867 )
...
* Add class BaseEntityDescription without unit_of_measurement
* Refactor according to review comments
* Tweak
* Fix offending integrations
* Fix offending integrations
2021-08-20 15:54:57 +02:00
Erik Montnemery
e1926caeb9
Remove STATE_CLASS_TOTAL and last_reset from sensor ( #54755 )
...
* Remove STATE_CLASS_TOTAL
* Update mill sensor
* Update tests
* Kill last_reset
* Return ATTR_LAST_RESET to utility_meter
* Update energy cost sensor
* Restore last_reset for backwards compatibility
* Re-add and update deprecation warning
* Update tests
* Fix utility_meter
* Update EnergyCostSensor
* Tweak
* Fix rebase mistake
* Fix test
2021-08-18 10:03:27 +02:00
Erik Montnemery
3a78f1fce6
Force STATE_CLASS_TOTAL_INCREASING to reset to 0 ( #54751 )
...
* Force STATE_CLASS_TOTAL_INCREASING to reset to 0
* Tweak
* Correct detection of new cycle
* Fix typing
2021-08-17 23:05:31 +02:00
Jc2k
de0460de61
Add device classes that were part of deprecated air quality entity ( #54075 )
2021-08-16 23:33:28 +02:00
Erik Montnemery
029873a088
Add support for total and total_increasing sensor state classes ( #54523 )
...
* Add support for amount and meter sensor state classes
* Ignore last_reset for STATE_CLASS_METER sensors
* Update tests
* Rename STATE_CLASS_METER to STATE_CLASS_AMOUNT_INCREASING
* Rename STATE_CLASS_AMOUNT to STATE_CLASS_TOTAL
* Fix typo
* Log warning if last_reset set together with state_class measurement
* Fix warning message
2021-08-13 12:35:23 +02:00
Bram Kragten
e23750b2a4
Add device class `gas` and enable statistics for it ( #54110 )
...
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2021-08-11 09:58:19 -07:00
Erik Montnemery
4e07ab1b32
Move temperature conversions to sensor base class (1/8) ( #48261 )
...
* Move temperature conversions to entity base class (1/8)
* Update integrations a-c
* Leave old temperature conversion until all integrations are migrated
* tweak
* Use contextlib.suppress
* Remove the MeasurableUnitEntity mixin
* Address comments, add tests
* Fix f-string
* Drop deprecation warning from base entity class
* Update with _attr-shorthand
* Fix rebase mistakes
* Fix additional rebase mistakes
* Only report temperature conversion once
* Fix additional rebase mistakes
* Format homeassistant/components/bbox/sensor.py
* Fix check for overidden _attr_state
* Remove test workarounds from implementation
* Remove useless None-check
* Tweaks
* Migrate new sensors a-c
* Update climacell
* Push deprecation of temperature conversion forward
* Override __repr__ in SensorEntity
* Include native_value in SensorEntity attributes
* Pylint
* Black
* Black
* Fix rebase mistakes
* black
* Fix rebase mistakes
* Revert changes in august/sensor.py
* Revert handling of unit converted restored state
* Apply code review suggestion
* Fix arlo test
2021-08-11 10:45:05 +02:00
Paulus Schoutsen
f71980a634
Create stats for all sensors that have % unit and are measurement ( #53576 )
2021-07-27 21:56:34 +02:00
Erik Montnemery
ddc788bf8e
Include future statistics in history/list_statistic_ids ( #52942 )
...
* Include future statistics in history/list_statistic_ids
* Improve tests
2021-07-14 11:54:55 +02:00
Erik Montnemery
16d2dcbfb2
Improve sensor statistics tests ( #52386 )
2021-07-02 09:51:47 +02:00
Erik Montnemery
0476c7f9ee
Normalize temperature statistics to °C ( #52297 )
...
* Normalize temperature statistics to °C
* Fix tests
* Support temperature conversion to and from K, improve tests
* Fix test
* Add tests, pylint
2021-06-30 14:17:58 +02:00
Erik Montnemery
c785db4ffa
Normalize energy statistics to kWh ( #52238 )
2021-06-29 12:20:10 +02:00
Erik Montnemery
06fc21e287
Improve editing of device conditions referencing non-added sensor ( #51835 )
2021-06-14 15:22:31 +02:00
Erik Montnemery
a1e3283f8f
Improve editing of device automations referencing non-added sensors ( #51312 )
2021-06-08 23:28:08 -07:00
Erik Montnemery
39c94e8daa
Fix flaky statistics tests ( #51214 )
...
* Fix flaky statistics tests
* Tweak
2021-05-28 22:37:17 +02:00
Erik Montnemery
b339d73109
Weight sensor average statistics by state durations ( #51150 )
...
* Weight sensor average statistics by state durations
* Fix test
2021-05-28 13:16:52 +02:00
Erik Montnemery
e16a8063a5
Compile statistics for energy sensors ( #50829 )
...
* Compile statistics for energy sensors
* Update tests
* Rename abs_value to state
* Tweak
* Recreate statistics table
* Pylint
* Try to fix test
* Fix statistics for multiple energy sensors
* Fix energy statistics when last_reset is not set
2021-05-20 13:05:15 +02:00
Joakim Sørensen
2f10f59717
Block custom integrations with missing or invalid version ( #49916 )
2021-05-17 15:48:41 +02:00
Erik Montnemery
89dd3292ba
Initial draft of statistics ( #49852 )
2021-05-16 10:23:37 -07:00
Martin Hjelmare
fdbef90a57
Remove device class timestamp from device condition and trigger ( #48431 )
...
* Remove unit from garmin connect
* Remove unit from hvv departures
* Remove device class timestamp from device condition and trigger
* Remove unit from systemmonitor
* Use device class constant for timestamp in ring
2021-04-01 15:05:10 +02:00
Alexei Chetroi
79b5ca9415
Add device classes for CO and CO2 measurements ( #47487 )
2021-03-07 00:52:43 +01:00
Ville Skyttä
dc880118a4
Lint suppression cleanups ( #47248 )
...
* Unused pylint suppression cleanups
* Remove outdated pylint bug references
* Add flake8-noqa config and note to run it every now and then
* Add codes to noqa's
* Unused noqa cleanups
2021-03-02 09:02:04 +01:00
Anders Melchiorsen
26ce316c18
Do not trigger when numeric_state is true at startup ( #46424 )
2021-02-20 09:11:36 +01:00