emhass 0.11.2__tar.gz → 0.11.3__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.
- {emhass-0.11.2 → emhass-0.11.3}/CHANGELOG.md +12 -0
- {emhass-0.11.2 → emhass-0.11.3}/PKG-INFO +17 -8
- {emhass-0.11.2 → emhass-0.11.3}/README.md +1 -1
- emhass-0.11.3/pyproject.toml +76 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/command_line.py +702 -373
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/data/associations.csv +1 -1
- emhass-0.11.3/src/emhass/forecast.py +1226 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/machine_learning_forecaster.py +204 -105
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/machine_learning_regressor.py +26 -7
- emhass-0.11.3/src/emhass/optimization.py +1440 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/retrieve_hass.py +226 -79
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/static/data/param_definitions.json +5 -4
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/utils.py +689 -455
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/web_server.py +339 -225
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass.egg-info/PKG-INFO +17 -8
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass.egg-info/SOURCES.txt +0 -1
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass.egg-info/requires.txt +13 -2
- emhass-0.11.3/tests/test_command_line_utils.py +935 -0
- emhass-0.11.3/tests/test_forecast.py +930 -0
- emhass-0.11.3/tests/test_machine_learning_forecaster.py +178 -0
- {emhass-0.11.2 → emhass-0.11.3}/tests/test_machine_learning_regressor.py +18 -12
- emhass-0.11.3/tests/test_optimization.py +810 -0
- emhass-0.11.3/tests/test_retrieve_hass.py +316 -0
- emhass-0.11.3/tests/test_utils.py +515 -0
- emhass-0.11.2/pyproject.toml +0 -5
- emhass-0.11.2/setup.py +0 -68
- emhass-0.11.2/src/emhass/forecast.py +0 -901
- emhass-0.11.2/src/emhass/optimization.py +0 -894
- emhass-0.11.2/tests/test_command_line_utils.py +0 -616
- emhass-0.11.2/tests/test_forecast.py +0 -554
- emhass-0.11.2/tests/test_machine_learning_forecaster.py +0 -152
- emhass-0.11.2/tests/test_optimization.py +0 -450
- emhass-0.11.2/tests/test_retrieve_hass.py +0 -196
- emhass-0.11.2/tests/test_utils.py +0 -308
- {emhass-0.11.2 → emhass-0.11.3}/CODE_OF_CONDUCT.md +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/CONTRIBUTING.md +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/LICENSE +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/MANIFEST.in +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/data/data_load_cost_forecast.csv +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/data/data_load_forecast.csv +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/data/data_prod_price_forecast.csv +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/data/data_train_load_clustering.pkl +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/data/data_train_load_forecast.pkl +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/data/data_weather_forecast.csv +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/data/heating_prediction.csv +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/data/opt_res_latest.csv +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/data/opt_res_perfect_optim_cost.csv +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/data/opt_res_perfect_optim_profit.csv +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/data/opt_res_perfect_optim_self-consumption.csv +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/data/test_df_final.pkl +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/data/test_response_get_data_get_method.pbz2 +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/data/test_response_scrapper_get_method.pbz2 +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/data/test_response_solarforecast_get_method.pbz2 +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/data/test_response_solcast_get_method.pbz2 +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/setup.cfg +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/__init__.py +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/data/cec_inverters.pbz2 +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/data/cec_modules.pbz2 +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/data/config_defaults.json +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/static/advanced.html +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/static/basic.html +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/static/configuration_list.html +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/static/configuration_script.js +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/static/img/emhass_icon.png +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/static/img/emhass_logo_short.svg +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/static/img/feather-sprite.svg +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/static/script.js +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/static/style.css +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/templates/configuration.html +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/templates/index.html +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass/templates/template.html +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass.egg-info/dependency_links.txt +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass.egg-info/entry_points.txt +0 -0
- {emhass-0.11.2 → emhass-0.11.3}/src/emhass.egg-info/top_level.txt +0 -0
@@ -1,5 +1,17 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
+
## 0.11.3 - 2024-10-31
|
4
|
+
### Improvement
|
5
|
+
- Runtime parameters now support all config parameters
|
6
|
+
- Adopted the Ruff code fomatting
|
7
|
+
- Added a Github Actions for Google OSV security code scan
|
8
|
+
- Updated the param_definitions.json
|
9
|
+
- Bump skforecast from 0.13.0 to 0.14.0. This needed upgrading a bunch of deprecated options. Notably skforcast now uses the time series cross-validation object (cv) from sklearn
|
10
|
+
### Fix
|
11
|
+
- Updated the default battery optimization weights
|
12
|
+
- Fix publish_data defaulting to opt_res_latest, tweak warning logs
|
13
|
+
- Added MLForecaster options to load_forecast_method for param_definitions.json
|
14
|
+
|
3
15
|
## 0.11.2 - 2024-10-31
|
4
16
|
### Improvement
|
5
17
|
- Added support to retrieve HA configuration. This will be used in the future to automatically retrieve some parameters as the currency
|
@@ -1,10 +1,10 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: emhass
|
3
|
-
Version: 0.11.
|
3
|
+
Version: 0.11.3
|
4
4
|
Summary: An Energy Management System for Home Assistant
|
5
|
-
|
6
|
-
|
7
|
-
|
5
|
+
Author-email: David HERNANDEZ <davidusb@gmail.com>
|
6
|
+
License: MIT
|
7
|
+
Project-URL: Homepage, https://github.com/davidusb-geek/emhass
|
8
8
|
Keywords: energy,management,optimization,hass
|
9
9
|
Classifier: Development Status :: 5 - Production/Stable
|
10
10
|
Classifier: Intended Audience :: Developers
|
@@ -12,10 +12,9 @@ Classifier: Topic :: Software Development :: Build Tools
|
|
12
12
|
Classifier: License :: OSI Approved :: MIT License
|
13
13
|
Classifier: Programming Language :: Python :: 3.11
|
14
14
|
Classifier: Operating System :: OS Independent
|
15
|
-
Requires-Python:
|
15
|
+
Requires-Python: <3.12,>=3.10
|
16
16
|
Description-Content-Type: text/markdown
|
17
17
|
License-File: LICENSE
|
18
|
-
Requires-Dist: wheel
|
19
18
|
Requires-Dist: numpy==1.26.4
|
20
19
|
Requires-Dist: scipy==1.12.0
|
21
20
|
Requires-Dist: pandas<=2.0.3
|
@@ -28,10 +27,20 @@ Requires-Dist: h5py==3.12.1
|
|
28
27
|
Requires-Dist: pulp>=2.4
|
29
28
|
Requires-Dist: pyyaml>=5.4.1
|
30
29
|
Requires-Dist: tables<=3.9.1
|
31
|
-
Requires-Dist: skforecast==0.
|
30
|
+
Requires-Dist: skforecast==0.14.0
|
32
31
|
Requires-Dist: flask>=2.0.3
|
33
32
|
Requires-Dist: waitress>=2.1.1
|
34
33
|
Requires-Dist: plotly>=5.6.0
|
34
|
+
Provides-Extra: docs
|
35
|
+
Requires-Dist: sphinx; extra == "docs"
|
36
|
+
Requires-Dist: sphinx-rtd-theme; extra == "docs"
|
37
|
+
Requires-Dist: myst-parser; extra == "docs"
|
38
|
+
Provides-Extra: test
|
39
|
+
Requires-Dist: requests_mock; extra == "test"
|
40
|
+
Requires-Dist: pytest; extra == "test"
|
41
|
+
Requires-Dist: coverage; extra == "test"
|
42
|
+
Requires-Dist: snakeviz; extra == "test"
|
43
|
+
Requires-Dist: ruff; extra == "test"
|
35
44
|
|
36
45
|
<div align="center">
|
37
46
|
<br>
|
@@ -648,7 +657,7 @@ This can be controlled in the configuration file with parameters `lp_solver` and
|
|
648
657
|
|
649
658
|
MIT License
|
650
659
|
|
651
|
-
Copyright (c) 2021-
|
660
|
+
Copyright (c) 2021-2025 David HERNANDEZ
|
652
661
|
|
653
662
|
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
654
663
|
|
@@ -613,7 +613,7 @@ This can be controlled in the configuration file with parameters `lp_solver` and
|
|
613
613
|
|
614
614
|
MIT License
|
615
615
|
|
616
|
-
Copyright (c) 2021-
|
616
|
+
Copyright (c) 2021-2025 David HERNANDEZ
|
617
617
|
|
618
618
|
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
619
619
|
|
@@ -0,0 +1,76 @@
|
|
1
|
+
[build-system]
|
2
|
+
# These are the assumed default build requirements from pip:
|
3
|
+
# https://pip.pypa.io/en/stable/reference/pip/#pep-517-and-518-support
|
4
|
+
requires = ["setuptools>=62.0.0", "wheel"]
|
5
|
+
build-backend = "setuptools.build_meta"
|
6
|
+
|
7
|
+
[project]
|
8
|
+
name = "emhass"
|
9
|
+
version = "0.11.3"
|
10
|
+
description = "An Energy Management System for Home Assistant"
|
11
|
+
readme = "README.md"
|
12
|
+
requires-python = ">=3.10, <3.12"
|
13
|
+
authors = [{ name = "David HERNANDEZ", email = "davidusb@gmail.com" }]
|
14
|
+
license = { text = "MIT" }
|
15
|
+
keywords = ["energy", "management", "optimization", "hass"]
|
16
|
+
classifiers = [
|
17
|
+
"Development Status :: 5 - Production/Stable",
|
18
|
+
"Intended Audience :: Developers",
|
19
|
+
"Topic :: Software Development :: Build Tools",
|
20
|
+
"License :: OSI Approved :: MIT License",
|
21
|
+
"Programming Language :: Python :: 3.11",
|
22
|
+
"Operating System :: OS Independent",
|
23
|
+
]
|
24
|
+
|
25
|
+
dependencies = [
|
26
|
+
"numpy==1.26.4",
|
27
|
+
"scipy==1.12.0",
|
28
|
+
"pandas<=2.0.3",
|
29
|
+
"pvlib>=0.10.2",
|
30
|
+
"protobuf>=3.0.0",
|
31
|
+
"pytz>=2021.1",
|
32
|
+
"requests>=2.25.1",
|
33
|
+
"beautifulsoup4>=4.9.3",
|
34
|
+
"h5py==3.12.1",
|
35
|
+
"pulp>=2.4",
|
36
|
+
"pyyaml>=5.4.1",
|
37
|
+
"tables<=3.9.1",
|
38
|
+
"skforecast==0.14.0",
|
39
|
+
"flask>=2.0.3",
|
40
|
+
"waitress>=2.1.1",
|
41
|
+
"plotly>=5.6.0",
|
42
|
+
]
|
43
|
+
|
44
|
+
[project.optional-dependencies]
|
45
|
+
docs = ["sphinx", "sphinx-rtd-theme", "myst-parser"]
|
46
|
+
test = ["requests_mock", "pytest", "coverage", "snakeviz", "ruff"]
|
47
|
+
|
48
|
+
[tool.setuptools.packages]
|
49
|
+
find = { where = ["src"] }
|
50
|
+
|
51
|
+
[tool.setuptools.package-data]
|
52
|
+
emhass = [
|
53
|
+
"templates/index.html",
|
54
|
+
"templates/template.html",
|
55
|
+
"templates/configuration.html",
|
56
|
+
"static/advanced.html",
|
57
|
+
"static/basic.html",
|
58
|
+
"static/script.js",
|
59
|
+
"static/configuration_script.js",
|
60
|
+
"static/style.css",
|
61
|
+
"static/configuration_list.html",
|
62
|
+
"static/img/emhass_icon.png",
|
63
|
+
"static/img/emhass_logo_short.svg",
|
64
|
+
"static/img/feather-sprite.svg",
|
65
|
+
"static/data/param_definitions.json",
|
66
|
+
"data/cec_modules.pbz2",
|
67
|
+
"data/cec_inverters.pbz2",
|
68
|
+
"data/associations.csv",
|
69
|
+
"data/config_defaults.json",
|
70
|
+
]
|
71
|
+
|
72
|
+
[project.scripts]
|
73
|
+
emhass = "emhass.command_line:main"
|
74
|
+
|
75
|
+
[project.urls]
|
76
|
+
Homepage = "https://github.com/davidusb-geek/emhass"
|