emhass 0.8.6__tar.gz → 0.9.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. {emhass-0.8.6 → emhass-0.9.1}/CHANGELOG.md +18 -0
  2. {emhass-0.8.6 → emhass-0.9.1}/PKG-INFO +29 -12
  3. emhass-0.8.6/src/emhass.egg-info/PKG-INFO → emhass-0.9.1/README.md +26 -44
  4. emhass-0.9.1/data/heating_prediction.csv +130 -0
  5. {emhass-0.8.6 → emhass-0.9.1}/setup.py +3 -3
  6. emhass-0.9.1/src/emhass/command_line.py +1013 -0
  7. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/forecast.py +58 -31
  8. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/machine_learning_forecaster.py +4 -4
  9. emhass-0.9.1/src/emhass/machine_learning_regressor.py +251 -0
  10. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/optimization.py +4 -3
  11. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/retrieve_hass.py +161 -102
  12. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/static/advanced.html +3 -0
  13. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/static/script.js +2 -0
  14. emhass-0.9.1/src/emhass/utils.py +973 -0
  15. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/web_server.py +48 -26
  16. emhass-0.8.6/README.md → emhass-0.9.1/src/emhass.egg-info/PKG-INFO +61 -9
  17. {emhass-0.8.6 → emhass-0.9.1}/src/emhass.egg-info/SOURCES.txt +3 -0
  18. {emhass-0.8.6 → emhass-0.9.1}/src/emhass.egg-info/requires.txt +2 -2
  19. {emhass-0.8.6 → emhass-0.9.1}/tests/test_command_line_utils.py +234 -71
  20. {emhass-0.8.6 → emhass-0.9.1}/tests/test_forecast.py +50 -35
  21. {emhass-0.8.6 → emhass-0.9.1}/tests/test_machine_learning_forecaster.py +14 -11
  22. emhass-0.9.1/tests/test_machine_learning_regressor.py +111 -0
  23. {emhass-0.8.6 → emhass-0.9.1}/tests/test_optimization.py +27 -19
  24. {emhass-0.8.6 → emhass-0.9.1}/tests/test_retrieve_hass.py +21 -9
  25. {emhass-0.8.6 → emhass-0.9.1}/tests/test_utils.py +18 -19
  26. emhass-0.8.6/src/emhass/command_line.py +0 -677
  27. emhass-0.8.6/src/emhass/utils.py +0 -688
  28. {emhass-0.8.6 → emhass-0.9.1}/CODE_OF_CONDUCT.md +0 -0
  29. {emhass-0.8.6 → emhass-0.9.1}/CONTRIBUTING.md +0 -0
  30. {emhass-0.8.6 → emhass-0.9.1}/LICENSE +0 -0
  31. {emhass-0.8.6 → emhass-0.9.1}/MANIFEST.in +0 -0
  32. {emhass-0.8.6 → emhass-0.9.1}/data/data_load_cost_forecast.csv +0 -0
  33. {emhass-0.8.6 → emhass-0.9.1}/data/data_load_forecast.csv +0 -0
  34. {emhass-0.8.6 → emhass-0.9.1}/data/data_prod_price_forecast.csv +0 -0
  35. {emhass-0.8.6 → emhass-0.9.1}/data/data_train_load_clustering.pkl +0 -0
  36. {emhass-0.8.6 → emhass-0.9.1}/data/data_train_load_forecast.pkl +0 -0
  37. {emhass-0.8.6 → emhass-0.9.1}/data/data_weather_forecast.csv +0 -0
  38. {emhass-0.8.6 → emhass-0.9.1}/data/opt_res_latest.csv +0 -0
  39. {emhass-0.8.6 → emhass-0.9.1}/data/opt_res_perfect_optim_cost.csv +0 -0
  40. {emhass-0.8.6 → emhass-0.9.1}/data/opt_res_perfect_optim_profit.csv +0 -0
  41. {emhass-0.8.6 → emhass-0.9.1}/data/opt_res_perfect_optim_self-consumption.csv +0 -0
  42. {emhass-0.8.6 → emhass-0.9.1}/data/test_df_final.pkl +0 -0
  43. {emhass-0.8.6 → emhass-0.9.1}/data/test_response_get_data_get_method.pbz2 +0 -0
  44. {emhass-0.8.6 → emhass-0.9.1}/data/test_response_scrapper_get_method.pbz2 +0 -0
  45. {emhass-0.8.6 → emhass-0.9.1}/data/test_response_solarforecast_get_method.pbz2 +0 -0
  46. {emhass-0.8.6 → emhass-0.9.1}/data/test_response_solcast_get_method.pbz2 +0 -0
  47. {emhass-0.8.6 → emhass-0.9.1}/pyproject.toml +0 -0
  48. {emhass-0.8.6 → emhass-0.9.1}/setup.cfg +0 -0
  49. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/__init__.py +0 -0
  50. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/data/cec_inverters.pbz2 +0 -0
  51. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/data/cec_modules.pbz2 +0 -0
  52. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/static/basic.html +0 -0
  53. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/static/img/emhass_icon.png +0 -0
  54. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/static/img/emhass_logo_short.svg +0 -0
  55. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/static/img/feather-sprite.svg +0 -0
  56. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/static/style.css +0 -0
  57. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/templates/index.html +0 -0
  58. {emhass-0.8.6 → emhass-0.9.1}/src/emhass/templates/template.html +0 -0
  59. {emhass-0.8.6 → emhass-0.9.1}/src/emhass.egg-info/dependency_links.txt +0 -0
  60. {emhass-0.8.6 → emhass-0.9.1}/src/emhass.egg-info/entry_points.txt +0 -0
  61. {emhass-0.8.6 → emhass-0.9.1}/src/emhass.egg-info/top_level.txt +0 -0
@@ -1,5 +1,23 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.9.1 - 2024-05-13
4
+ ### Fix
5
+ - Fix patch for issue with paths to modules and inverters database
6
+ - Fixed code formatting, or at least trying to keep a unique format
7
+
8
+ ## 0.9.0 - 2024-05-10
9
+ ### Improvement
10
+ - On this new version we now have a new method to train a regression model using Scikit-Learn methods. This is the contribution of @gieljnssns. Check the dedicated section the documentation to this new feature: [https://emhass.readthedocs.io/en/latest/mlregressor.html](https://emhass.readthedocs.io/en/latest/mlregressor.html)
11
+ - Again another bunch of nice improvements by @GeoDerp:
12
+ - Added Dictionary var containing EMHASS paths
13
+ - MLForcaster error suppression
14
+ - Add `freq` as runtime parameter
15
+ - Improved documentation added README buttons
16
+ - Bumping dependencies:
17
+ - Bump h5py from 3.10.0 to 3.11.0
18
+ - Bump myst-parser from 2.0.0 to 3.0.1
19
+ - Bump skforecast from 0.11.0 to 0.12.0
20
+
3
21
  ## 0.8.6 - 2024-04-07
4
22
  ### Fix
5
23
  - Fixed bug from forecast out method related to issue 240
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: emhass
3
- Version: 0.8.6
3
+ Version: 0.9.1
4
4
  Summary: An Energy Management System for Home Assistant
5
5
  Home-page: https://github.com/davidusb-geek/emhass
6
6
  Author: David HERNANDEZ
@@ -24,11 +24,11 @@ Requires-Dist: protobuf>=3.0.0
24
24
  Requires-Dist: pytz>=2021.1
25
25
  Requires-Dist: requests>=2.25.1
26
26
  Requires-Dist: beautifulsoup4>=4.9.3
27
- Requires-Dist: h5py==3.10.0
27
+ Requires-Dist: h5py==3.11.0
28
28
  Requires-Dist: pulp>=2.4
29
29
  Requires-Dist: pyyaml>=5.4.1
30
30
  Requires-Dist: tables<=3.9.1
31
- Requires-Dist: skforecast==0.11.0
31
+ Requires-Dist: skforecast==0.12.0
32
32
  Requires-Dist: flask>=2.0.3
33
33
  Requires-Dist: waitress>=2.1.1
34
34
  Requires-Dist: plotly>=5.6.0
@@ -40,29 +40,46 @@ Requires-Dist: plotly>=5.6.0
40
40
  <strong></strong>
41
41
  </div>
42
42
  <br>
43
+
43
44
  <p align="center">
44
- <a href="https://github.com/davidusb-geek/emhass/releases">
45
+ <a style="text-decoration:none" href="https://github.com/davidusb-geek/emhass/releases">
45
46
  <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/davidusb-geek/emhass">
46
47
  </a>
47
- <a href="https://github.com/davidusb-geek/emhass/actions">
48
+ <a style="text-decoration:none" href="https://github.com/davidusb-geek/emhass/actions">
48
49
  <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/davidusb-geek/emhass/python-test.yml?branch=master">
49
50
  </a>
50
- <a href="https://codecov.io/github/davidusb-geek/emhass" >
51
+ <a hstyle="text-decoration:none" ref="https://codecov.io/github/davidusb-geek/emhass" >
51
52
  <img src="https://codecov.io/github/davidusb-geek/emhass/branch/master/graph/badge.svg?token=BW7KSCHN90"/>
52
53
  </a>
53
- <a href="https://github.com/davidusb-geek/emhass/blob/master/LICENSE">
54
+ <a style="text-decoration:none" href="https://github.com/davidusb-geek/emhass/blob/master/LICENSE">
54
55
  <img alt="GitHub" src="https://img.shields.io/github/license/davidusb-geek/emhass">
55
56
  </a>
56
- <a href="https://pypi.org/project/emhass/">
57
+ <a style="text-decoration:none" href="https://pypi.org/project/emhass/">
57
58
  <img alt="PyPI - Python Version" src="https://img.shields.io/pypi/pyversions/emhass">
58
59
  </a>
59
- <a href="https://pypi.org/project/emhass/">
60
+ <a style="text-decoration:none" href="https://pypi.org/project/emhass/">
60
61
  <img alt="PyPI - Status" src="https://img.shields.io/pypi/status/emhass">
61
62
  </a>
62
- <a href="https://emhass.readthedocs.io/en/latest/">
63
+ <a style="text-decoration:none" href="https://emhass.readthedocs.io/en/latest/">
63
64
  <img alt="Read the Docs" src="https://img.shields.io/readthedocs/emhass">
64
65
  </a>
65
66
  </p>
67
+
68
+ <div align="center">
69
+ <a style="text-decoration:none" href="https://emhass.readthedocs.io/en/latest/">
70
+ <img src="https://raw.githubusercontent.com/davidusb-geek/emhass/master/docs/images/Documentation_button.svg" alt="Documentation">
71
+ </a>
72
+ <a style="text-decoration:none" href="https://community.home-assistant.io/t/emhass-an-energy-management-for-home-assistant/338126">
73
+ <img src="https://raw.githubusercontent.com/davidusb-geek/emhass/master/docs/images/Community_button.svg" alt="Community">
74
+ </a>
75
+ <a style="text-decoration:none" href="https://github.com/davidusb-geek/emhass/issues">
76
+ <img src="https://raw.githubusercontent.com/davidusb-geek/emhass/master/docs/images/Issues_button.svg" alt="Issues">
77
+ </a>
78
+ <a style="text-decoration:none" href="https://github.com/davidusb-geek/emhass-add-on">
79
+ <img src="https://raw.githubusercontent.com/davidusb-geek/emhass/master/docs/images/EMHASS_Add_on_button.svg" alt="EMHASS Add-on">
80
+ </a>
81
+ </div>
82
+
66
83
  <br>
67
84
  <p align="center">
68
85
  If you like this work please consider buying a coffee ;-)
@@ -107,7 +124,7 @@ You must follow these steps to make EMHASS work properly:
107
124
 
108
125
  1) Define all the parameters in the configuration file according to your installation. See the description for each parameter in the **configuration** section.
109
126
 
110
- 2) You most notably will need to define the main data entering EMHASS. This will be the `sensor_power_photovoltaics` for the name of the your hass variable containing the PV produced power and the variable `sensor_power_load_no_var_loads` for the load power of your household excluding the power of the deferrable loads that you want to optimize.
127
+ 2) You most notably will need to define the main data entering EMHASS. This will be the `sensor.power_photovoltaics` for the name of the your hass variable containing the PV produced power and the variable `sensor.power_load_no_var_loads` for the load power of your household excluding the power of the deferrable loads that you want to optimize.
111
128
 
112
129
  3) Launch the actual optimization and check the results. This can be done manually using the buttons in the web ui or with a `curl` command like this: `curl -i -H 'Content-Type:application/json' -X POST -d '{}' http://localhost:5000/action/dayahead-optim`.
113
130
 
@@ -370,7 +387,7 @@ In EMHASS we have basically 4 forecasts to deal with:
370
387
 
371
388
  - PV production selling price forecast: at what price are you selling your excess PV production on the next 24h. This is given in EUR/kWh.
372
389
 
373
- The sensor containing the load data should be specified in parameter `var_load` in the configuration file. As we want to optimize the household energies, when need to forecast the load power conumption. The default method for this is a naive approach using 1-day persistence. The load data variable should not contain the data from the deferrable loads themselves. For example, lets say that you set your deferrable load to be the washing machine. The variable that you should enter in EMHASS will be: `var_load: 'sensor.power_load_no_var_loads'` and `sensor_power_load_no_var_loads = sensor_power_load - sensor_power_washing_machine`. This is supposing that the overall load of your house is contained in variable: `sensor_power_load`. The sensor `sensor_power_load_no_var_loads` can be easily created with a new template sensor in Home Assistant.
390
+ The sensor containing the load data should be specified in parameter `var_load` in the configuration file. As we want to optimize the household energies, when need to forecast the load power conumption. The default method for this is a naive approach using 1-day persistence. The load data variable should not contain the data from the deferrable loads themselves. For example, lets say that you set your deferrable load to be the washing machine. The variable that you should enter in EMHASS will be: `var_load: 'sensor.power_load_no_var_loads'` and `sensor.power_load_no_var_loads = sensor.power_load - sensor.power_washing_machine`. This is supposing that the overall load of your house is contained in variable: `sensor.power_load`. The sensor `sensor.power_load_no_var_loads` can be easily created with a new template sensor in Home Assistant.
374
391
 
375
392
  If you are implementing a MPC controller, then you should also need to provide some data at the optimization runtime using the key `runtimeparams`.
376
393
 
@@ -1,38 +1,3 @@
1
- Metadata-Version: 2.1
2
- Name: emhass
3
- Version: 0.8.6
4
- Summary: An Energy Management System for Home Assistant
5
- Home-page: https://github.com/davidusb-geek/emhass
6
- Author: David HERNANDEZ
7
- Author-email: davidusb@gmail.com
8
- Keywords: energy,management,optimization,hass
9
- Classifier: Development Status :: 5 - Production/Stable
10
- Classifier: Intended Audience :: Developers
11
- Classifier: Topic :: Software Development :: Build Tools
12
- Classifier: License :: OSI Approved :: MIT License
13
- Classifier: Programming Language :: Python :: 3.11
14
- Classifier: Operating System :: OS Independent
15
- Requires-Python: >=3.10, <3.12
16
- Description-Content-Type: text/markdown
17
- License-File: LICENSE
18
- Requires-Dist: wheel
19
- Requires-Dist: numpy==1.26.4
20
- Requires-Dist: scipy==1.12.0
21
- Requires-Dist: pandas<=2.0.3
22
- Requires-Dist: pvlib>=0.10.2
23
- Requires-Dist: protobuf>=3.0.0
24
- Requires-Dist: pytz>=2021.1
25
- Requires-Dist: requests>=2.25.1
26
- Requires-Dist: beautifulsoup4>=4.9.3
27
- Requires-Dist: h5py==3.10.0
28
- Requires-Dist: pulp>=2.4
29
- Requires-Dist: pyyaml>=5.4.1
30
- Requires-Dist: tables<=3.9.1
31
- Requires-Dist: skforecast==0.11.0
32
- Requires-Dist: flask>=2.0.3
33
- Requires-Dist: waitress>=2.1.1
34
- Requires-Dist: plotly>=5.6.0
35
-
36
1
  <div align="center">
37
2
  <br>
38
3
  <img alt="EMHASS" src="https://raw.githubusercontent.com/davidusb-geek/emhass/master/docs/images/emhass_logo.png" width="300px">
@@ -40,29 +5,46 @@ Requires-Dist: plotly>=5.6.0
40
5
  <strong></strong>
41
6
  </div>
42
7
  <br>
8
+
43
9
  <p align="center">
44
- <a href="https://github.com/davidusb-geek/emhass/releases">
10
+ <a style="text-decoration:none" href="https://github.com/davidusb-geek/emhass/releases">
45
11
  <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/davidusb-geek/emhass">
46
12
  </a>
47
- <a href="https://github.com/davidusb-geek/emhass/actions">
13
+ <a style="text-decoration:none" href="https://github.com/davidusb-geek/emhass/actions">
48
14
  <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/davidusb-geek/emhass/python-test.yml?branch=master">
49
15
  </a>
50
- <a href="https://codecov.io/github/davidusb-geek/emhass" >
16
+ <a hstyle="text-decoration:none" ref="https://codecov.io/github/davidusb-geek/emhass" >
51
17
  <img src="https://codecov.io/github/davidusb-geek/emhass/branch/master/graph/badge.svg?token=BW7KSCHN90"/>
52
18
  </a>
53
- <a href="https://github.com/davidusb-geek/emhass/blob/master/LICENSE">
19
+ <a style="text-decoration:none" href="https://github.com/davidusb-geek/emhass/blob/master/LICENSE">
54
20
  <img alt="GitHub" src="https://img.shields.io/github/license/davidusb-geek/emhass">
55
21
  </a>
56
- <a href="https://pypi.org/project/emhass/">
22
+ <a style="text-decoration:none" href="https://pypi.org/project/emhass/">
57
23
  <img alt="PyPI - Python Version" src="https://img.shields.io/pypi/pyversions/emhass">
58
24
  </a>
59
- <a href="https://pypi.org/project/emhass/">
25
+ <a style="text-decoration:none" href="https://pypi.org/project/emhass/">
60
26
  <img alt="PyPI - Status" src="https://img.shields.io/pypi/status/emhass">
61
27
  </a>
62
- <a href="https://emhass.readthedocs.io/en/latest/">
28
+ <a style="text-decoration:none" href="https://emhass.readthedocs.io/en/latest/">
63
29
  <img alt="Read the Docs" src="https://img.shields.io/readthedocs/emhass">
64
30
  </a>
65
31
  </p>
32
+
33
+ <div align="center">
34
+ <a style="text-decoration:none" href="https://emhass.readthedocs.io/en/latest/">
35
+ <img src="https://raw.githubusercontent.com/davidusb-geek/emhass/master/docs/images/Documentation_button.svg" alt="Documentation">
36
+ </a>
37
+ <a style="text-decoration:none" href="https://community.home-assistant.io/t/emhass-an-energy-management-for-home-assistant/338126">
38
+ <img src="https://raw.githubusercontent.com/davidusb-geek/emhass/master/docs/images/Community_button.svg" alt="Community">
39
+ </a>
40
+ <a style="text-decoration:none" href="https://github.com/davidusb-geek/emhass/issues">
41
+ <img src="https://raw.githubusercontent.com/davidusb-geek/emhass/master/docs/images/Issues_button.svg" alt="Issues">
42
+ </a>
43
+ <a style="text-decoration:none" href="https://github.com/davidusb-geek/emhass-add-on">
44
+ <img src="https://raw.githubusercontent.com/davidusb-geek/emhass/master/docs/images/EMHASS_Add_on_button.svg" alt="EMHASS Add-on">
45
+ </a>
46
+ </div>
47
+
66
48
  <br>
67
49
  <p align="center">
68
50
  If you like this work please consider buying a coffee ;-)
@@ -107,7 +89,7 @@ You must follow these steps to make EMHASS work properly:
107
89
 
108
90
  1) Define all the parameters in the configuration file according to your installation. See the description for each parameter in the **configuration** section.
109
91
 
110
- 2) You most notably will need to define the main data entering EMHASS. This will be the `sensor_power_photovoltaics` for the name of the your hass variable containing the PV produced power and the variable `sensor_power_load_no_var_loads` for the load power of your household excluding the power of the deferrable loads that you want to optimize.
92
+ 2) You most notably will need to define the main data entering EMHASS. This will be the `sensor.power_photovoltaics` for the name of the your hass variable containing the PV produced power and the variable `sensor.power_load_no_var_loads` for the load power of your household excluding the power of the deferrable loads that you want to optimize.
111
93
 
112
94
  3) Launch the actual optimization and check the results. This can be done manually using the buttons in the web ui or with a `curl` command like this: `curl -i -H 'Content-Type:application/json' -X POST -d '{}' http://localhost:5000/action/dayahead-optim`.
113
95
 
@@ -370,7 +352,7 @@ In EMHASS we have basically 4 forecasts to deal with:
370
352
 
371
353
  - PV production selling price forecast: at what price are you selling your excess PV production on the next 24h. This is given in EUR/kWh.
372
354
 
373
- The sensor containing the load data should be specified in parameter `var_load` in the configuration file. As we want to optimize the household energies, when need to forecast the load power conumption. The default method for this is a naive approach using 1-day persistence. The load data variable should not contain the data from the deferrable loads themselves. For example, lets say that you set your deferrable load to be the washing machine. The variable that you should enter in EMHASS will be: `var_load: 'sensor.power_load_no_var_loads'` and `sensor_power_load_no_var_loads = sensor_power_load - sensor_power_washing_machine`. This is supposing that the overall load of your house is contained in variable: `sensor_power_load`. The sensor `sensor_power_load_no_var_loads` can be easily created with a new template sensor in Home Assistant.
355
+ The sensor containing the load data should be specified in parameter `var_load` in the configuration file. As we want to optimize the household energies, when need to forecast the load power conumption. The default method for this is a naive approach using 1-day persistence. The load data variable should not contain the data from the deferrable loads themselves. For example, lets say that you set your deferrable load to be the washing machine. The variable that you should enter in EMHASS will be: `var_load: 'sensor.power_load_no_var_loads'` and `sensor.power_load_no_var_loads = sensor.power_load - sensor.power_washing_machine`. This is supposing that the overall load of your house is contained in variable: `sensor.power_load`. The sensor `sensor.power_load_no_var_loads` can be easily created with a new template sensor in Home Assistant.
374
356
 
375
357
  If you are implementing a MPC controller, then you should also need to provide some data at the optimization runtime using the key `runtimeparams`.
376
358
 
@@ -0,0 +1,130 @@
1
+ timestamp,degreeday,solar,hour
2
+ 2023-11-10 23:59:32.458039+01:00,12.23,3.982,2.87
3
+ 2023-11-11 23:59:32.459778+01:00,12.94,13.723,3.14
4
+ 2023-11-12 23:59:32.462220+01:00,14.45,4.925,3.5
5
+ 2023-11-13 23:59:32.462167+01:00,8.49,2.138,3.19
6
+ 2023-11-14 23:59:32.338942+01:00,8.61,2.444,2.91
7
+ 2023-11-15 23:59:32.195198+01:00,9.83,10.685,2.88
8
+ 2023-11-16 23:59:32.501044+01:00,12.8,1.955,1.28
9
+ 2023-11-17 23:59:32.316366+01:00,13.35,8.742,2.97
10
+ 2023-11-18 23:59:32.082785+01:00,11.84,0.849,3.42
11
+ 2023-11-19 23:59:32.077198+01:00,7.3,10.85,1.9
12
+ 2023-11-20 23:59:32.431964+01:00,9.91,6.395,2.48
13
+ 2023-11-21 23:59:32.295705+01:00,11.44,2.678,2.91
14
+ 2023-11-22 23:59:32.377740+01:00,16.14,2.994,2.96
15
+ 2023-11-23 23:59:32.385890+01:00,9.31,5.346,2.91
16
+ 2023-11-24 23:59:32.376194+01:00,12.96,8.61,2.9
17
+ 2023-11-25 23:59:32.373666+01:00,14.91,12.31,3.47
18
+ 2023-11-26 23:59:32.373647+01:00,14.79,2.589,3.69
19
+ 2023-11-27 23:59:32.379920+01:00,14.92,0.322,6.05
20
+ 2023-11-28 23:59:32.213947+01:00,18.59,20.342,2.94
21
+ 2023-11-29 23:59:32.217384+01:00,19.05,5.393,5.41
22
+ 2023-11-30 23:59:32.222641+01:00,21.27,1.899,6.77
23
+ 2023-12-01 23:59:32.224533+01:00,21.3,1.233,5.75
24
+ 2023-12-02 23:59:32.107119+01:00,21.97,14.653,2.96
25
+ 2023-12-03 23:59:32.107436+01:00,20.61,4.766,8.89
26
+ 2023-12-04 23:59:32.116642+01:00,18.36,1.349,6.73
27
+ 2023-12-05 23:59:32.191254+01:00,16.93,0.869,6.17
28
+ 2023-12-06 23:59:32.176803+01:00,16.8,5.413,5.38
29
+ 2023-12-07 23:59:32.251031+01:00,17.67,8.089,5.98
30
+ 2023-12-08 23:59:32.255888+01:00,14.37,1.203,5.63
31
+ 2023-12-09 23:59:32.109040+01:00,11.94,0.814,5.08
32
+ 2023-12-10 23:59:32.103738+01:00,9.72,6.051,3.42
33
+ 2023-12-11 23:59:32.497717+01:00,9.83,1.459,3.87
34
+ 2023-12-12 23:59:32.502503+01:00,11.18,4.176,3.31
35
+ 2023-12-13 23:59:32.504794+01:00,11.09,2.91,3.1
36
+ 2023-12-14 23:59:32.177489+01:00,13.88,7.53,2.89
37
+ 2023-12-15 23:59:32.186292+01:00,12.18,2.129,5.68
38
+ 2023-12-16 23:59:32.176812+01:00,11.75,1.641,3.46
39
+ 2023-12-17 23:59:32.119874+01:00,12.18,14.868,3.46
40
+ 2023-12-18 23:59:32.120168+01:00,14.75,1.283,3.12
41
+ 2023-12-19 23:59:32.120101+01:00,12.82,0.09,5.07
42
+ 2023-12-20 23:59:32.249731+01:00,12.8,3.803,3.6
43
+ 2023-12-21 23:59:32.249135+01:00,8.73,2.096,3.55
44
+ 2023-12-22 23:59:32.385164+01:00,9.12,1.278,0.85
45
+ 2023-12-23 23:59:32.382910+01:00,8.99,1.848,0.0
46
+ 2023-12-24 23:59:32.382457+01:00,8.04,0.165,7.42
47
+ 2023-12-25 23:59:32.303520+01:00,7.56,1.028,2.93
48
+ 2023-12-26 23:59:32.105788+01:00,10.55,9.274,2.92
49
+ 2023-12-27 23:59:32.183107+01:00,11.78,2.026,3.39
50
+ 2023-12-28 23:59:32.183405+01:00,8.91,3.68,3.19
51
+ 2023-12-29 23:59:32.399740+01:00,9.35,2.464,2.95
52
+ 2023-12-30 23:59:32.091110+01:00,11.07,7.948,3.44
53
+ 2023-12-31 23:59:32.257530+01:00,10.51,3.5,3.48
54
+ 2024-01-01 23:59:32.106161+01:00,12.75,4.046,3.08
55
+ 2024-01-02 23:59:32.103187+01:00,8.81,0.562,4.46
56
+ 2024-01-03 23:59:32.429947+01:00,10.03,2.184,3.26
57
+ 2024-01-04 23:59:32.436773+01:00,11.22,5.662,2.97
58
+ 2024-01-05 23:59:32.165969+01:00,12.42,1.199,3.6
59
+ 2024-01-06 23:59:32.110208+01:00,15.35,0.295,4.32
60
+ 2024-01-07 23:59:32.147775+01:00,19.88,0.896,6.19
61
+ 2024-01-08 23:59:32.242815+01:00,22.74,6.468,5.82
62
+ 2024-01-09 23:59:32.201342+01:00,24.38,21.307,6.92
63
+ 2024-01-10 23:59:32.411136+01:00,24.84,18.89,1.53
64
+ 2024-01-11 23:59:32.399433+01:00,23.57,19.27,3.05
65
+ 2024-01-12 23:59:32.467622+01:00,18.22,1.977,13.98
66
+ 2024-01-13 23:59:32.077428+01:00,17.9,0.472,6.93
67
+ 2024-01-14 23:59:32.127844+01:00,19.65,1.346,6.95
68
+ 2024-01-15 23:59:32.125062+01:00,19.49,4.35,7.82
69
+ 2024-01-16 23:59:32.280474+01:00,21.21,9.238,5.7
70
+ 2024-01-17 23:59:32.283951+01:00,23.17,1.193,7.37
71
+ 2024-01-18 23:59:32.361241+01:00,21.61,17.307,6.67
72
+ 2024-01-19 23:59:32.341654+01:00,22.06,21.004,6.24
73
+ 2024-01-20 23:59:32.359151+01:00,21.95,12.912,6.43
74
+ 2024-01-21 23:59:32.126221+01:00,17.38,3.28,7.45
75
+ 2024-01-22 23:59:32.126346+01:00,9.47,7.645,6.1
76
+ 2024-01-23 23:59:32.417727+01:00,11.87,7.689,4.76
77
+ 2024-01-24 23:59:32.420933+01:00,8.15,10.052,3.62
78
+ 2024-01-25 23:59:32.419138+01:00,12.38,3.785,3.98
79
+ 2024-01-26 23:59:32.422066+01:00,11.4,11.94,3.1
80
+ 2024-01-27 23:59:32.176538+01:00,17.96,19.741,3.45
81
+ 2024-01-28 23:59:32.168328+01:00,16.72,20.366,4.85
82
+ 2024-01-29 23:59:32.173916+01:00,13.11,16.972,4.51
83
+ 2024-01-30 23:59:32.503034+01:00,11.21,4.013,3.99
84
+ 2024-01-31 23:59:32.179265+01:00,12.79,4.766,3.73
85
+ 2024-02-01 23:59:32.487147+01:00,12.74,23.924,2.98
86
+ 2024-02-02 23:59:32.570084+01:00,13.0,2.98,5.04
87
+ 2024-02-03 23:59:32.484878+01:00,9.26,1.413,3.48
88
+ 2024-02-04 23:59:32.472168+01:00,8.35,4.306,3.47
89
+ 2024-02-05 23:59:32.409856+01:00,9.78,5.704,0.0
90
+ 2024-02-06 23:59:32.439147+01:00,9.15,2.431,6.56
91
+ 2024-02-07 23:59:32.235231+01:00,14.42,3.839,3.07
92
+ 2024-02-08 23:59:32.441543+01:00,13.9,1.412,5.94
93
+ 2024-02-09 23:59:32.443230+01:00,8.2,7.246,2.96
94
+ 2024-02-10 23:59:32.504326+01:00,8.37,8.567,3.48
95
+ 2024-02-11 23:59:32.452959+01:00,10.44,5.304,0.0
96
+ 2024-02-12 23:59:32.450999+01:00,12.65,16.004,3.42
97
+ 2024-02-13 23:59:32.343162+01:00,13.84,19.809,3.16
98
+ 2024-02-14 23:59:32.339408+01:00,8.48,1.98,4.52
99
+ 2024-02-15 23:59:32.339971+01:00,6.13,9.952,2.98
100
+ 2024-02-16 23:59:32.455273+01:00,7.66,3.675,3.06
101
+ 2024-02-17 23:59:32.097937+01:00,8.56,12.269,3.48
102
+ 2024-02-18 23:59:32.126377+01:00,9.59,2.205,3.04
103
+ 2024-02-19 23:59:32.421243+01:00,10.22,3.731,2.97
104
+ 2024-02-20 23:59:32.421985+01:00,11.61,13.775,0.0
105
+ 2024-02-21 23:59:32.371300+01:00,10.52,4.856,3.02
106
+ 2024-02-22 23:59:32.373153+01:00,9.53,4.256,3.48
107
+ 2024-02-23 23:59:32.372545+01:00,13.66,8.743,4.09
108
+ 2024-02-24 23:59:32.197044+01:00,14.44,7.842,4.3
109
+ 2024-02-25 23:59:32.196386+01:00,12.41,16.235,3.48
110
+ 2024-02-26 23:59:32.409648+01:00,14.63,2.096,5.05
111
+ 2024-02-27 23:59:32.373347+01:00,14.5,29.437,3.21
112
+ 2024-02-28 23:59:32.407538+01:00,15.38,6.475,4.88
113
+ 2024-02-29 23:59:32.194724+01:00,11.83,3.238,4.68
114
+ 2024-03-01 23:59:32.084520+01:00,10.56,14.352,3.8
115
+ 2024-03-02 23:59:32.066434+01:00,9.94,25.356,3.49
116
+ 2024-03-03 23:59:32.270878+01:00,8.9,10.577,3.19
117
+ 2024-03-04 23:59:32.274918+01:00,10.67,28.096,2.08
118
+ 2024-03-05 23:59:32.315023+01:00,12.19,10.553,2.95
119
+ 2024-03-06 23:59:32.441001+01:00,11.38,32.597,2.91
120
+ 2024-03-07 23:59:32.440044+01:00,12.39,28.856,2.96
121
+ 2024-03-08 23:59:32.228265+01:00,12.01,37.395,2.96
122
+ 2024-03-09 23:59:32.081874+01:00,8.72,17.66,3.5
123
+ 2024-03-10 23:59:32.335321+01:00,8.0,12.207,3.47
124
+ 2024-03-11 23:59:32.139531+01:00,10.39,2.526,2.96
125
+ 2024-03-12 23:59:32.136709+01:00,10.24,8.211,2.98
126
+ 2024-03-13 23:59:32.407174+01:00,7.19,6.425,2.95
127
+ 2024-03-14 23:59:32.342436+01:00,6.06,33.389,1.64
128
+ 2024-03-15 23:59:32.266278+01:00,5.63,12.628,2.96
129
+ 2024-03-16 23:59:32.155245+01:00,9.57,12.103,3.0
130
+ 2024-03-17 23:59:32.366155+01:00,8.43,14.302,0.25
@@ -19,7 +19,7 @@ long_description = (here / 'README.md').read_text(encoding='utf-8')
19
19
 
20
20
  setup(
21
21
  name='emhass', # Required
22
- version='0.8.6', # Required
22
+ version='0.9.1', # Required
23
23
  description='An Energy Management System for Home Assistant', # Optional
24
24
  long_description=long_description, # Optional
25
25
  long_description_content_type='text/markdown', # Optional (see note above)
@@ -48,11 +48,11 @@ setup(
48
48
  'pytz>=2021.1',
49
49
  'requests>=2.25.1',
50
50
  'beautifulsoup4>=4.9.3',
51
- 'h5py==3.10.0',
51
+ 'h5py==3.11.0',
52
52
  'pulp>=2.4',
53
53
  'pyyaml>=5.4.1',
54
54
  'tables<=3.9.1',
55
- 'skforecast==0.11.0',
55
+ 'skforecast==0.12.0',
56
56
  'flask>=2.0.3',
57
57
  'waitress>=2.1.1',
58
58
  'plotly>=5.6.0'