* Update ghcr.io/hassio-addons/base Docker tag to v17.2.5
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Stefan Allius <stefan.allius@t-online.de>
* setup logger for hypercorn and dashboard
* use logger.ini to setup dashboard logger
* workaround: restore the hypercorn logger config
- quart/hyercorn overwrites the logger config.
as a workaround we restore the config at the
beginning of a request
* fix the hypercorn log handler only once
* change proxy into a ASGI application
- move Quart init from server.py into app.py
- create Server class for config and loggin setup
- restore hypercorn logging configuration after
start of Quart/Hypercorn
* move get_log_level into Server class
* define config in test_emu_init_close
* remove Web() instance from the testcase
- with importing app.py The blueprint Web() will
automatically created and a second call in test-
cases must avoided
* add unit tests
* move code from app.py into server.py
* test the init_logging_system() method
* add HypercornLogHndl tests
* fix deprecated pytest async warning
- Cleanup pending async tasks
- fix deprecated warning about event_loop
* add unit test for error handling in build_config()
* coverage: ignore quart template files
* check print output in test_save_and_restore
* update changelog
* add Dashboards log handler to all known loggers
* add list of last 3 warnings/errors to page
* add note list to page
* create LogHandler for the dashboard
- simple memory log handler which stores the last
64 warnings/errors for the dashboard
* render warnings/errors as note list
* add page for warnings and errors
* fix double defined build target
* add well done message if no errors in the logs
* translate page titles
* more translations
* add Notes page and table for important messages
* add unit tests
* display proxy version on dashboard
* add MQTT page
* styles adjusted on the different pages
- use same colors
- add bordered shadow to all cards and tables
* fix unit tests
* migrate the conn table to a general table
- rename the template file
- get headline from table description
* remove footer from index page
* make version string translateable
* cleanup
* remove stripped table rows
* add mqtt info table
* translate mqtt page
* don't fetch notes list for the log-page
* fix Mqtt init call for unit tests
* add mqtt-fetch test
* check received counter in unit test
* add route for log file deletion
* add modal for senity check before file deletion
* add trash icon which unhide the modal
* add more translations
* increase test coverage
* cleanup
* store logging path in Config class
* rename template files and page files
* jump to referer page
- after changing the language, we jump to
the referer page, if the attribute exists
* build and send list of log-files
* rename Download page into Log files
* initialize log-path in test config
* improve dashboard unit tests
- add log file tests
- check content-languages after language switch
* initialize config structure for log-file tests
* add test log file to project
* add sub_dir to test log path
- non files must be skipped. To test this we add
a sub directory to the test log directory
* add german translations
* set quart debug flag for debug versions
* update changelog
* add button for languages setting
* build a web module for the dashboard
- load all python module from local dir
- initialize Blueprint and Babel
* set a default key for secure cookies
* add translations to docker container
* improve translation build
- clean target erases the *.pot
- don't modify the resurt of url_for() calls
- don't translate the language description
* translate connection table, fix icon
* build relative urls for HA ingress
* fix unit test, increase coverage
* design counter on connection board
* display time of last update and add reload button
* chance `Updated` field to a real button
* Provide counter values for the dashboard
* change background color ot the top branch
- use dark-grey instead of black to reduce the contrast
* change color of counter tiles
* test proxy connection counter handling
* prepare conn-table and notes list building
* remove obsolete menue points
* store client mode for dashboard
* store inverters serial number for the dashboard
* store inverters serial number
* build connection table for dashboard
* add connection table to dashboard
* fix responsiveness of the tiles
* adapt unit tests
* remove test fake code
* increase test coverage, remove obsolete if statement
* add optional java script to fetch data regulary
* change file extension to `html.j2` for templates
* fix route for fetch data
- for running in iframes (e.g. HA ingress) we must
use relative path in the URLs
* increase test coverage
* remove unused statements
* update favicon.svg
* add optional java script to fetch data regullary
* change file extension to `html.j2` for templates
* fix route for fetch data
- for running in iframes (e.g. HA ingress) we must
use relative path in the URLs
* increase test coverage
* remove unused statements
* ignore translation and log files
* add quart-babel
* build and install translation files
* don't export the web-ui port 8127
- for security reason the user should use the
HA ingress and not the direkt access to the web
dashboard
* set 'lang' in html tag
* configure path to web files for Quart
* copy web-file into the add-on container
* add test template and stylesheet
* add w3.css dashboard
* fix unit test for test dashboard
* add Roboto font
* add awesome web font
* add all favicon formats
* load fonts locally
* adapt unit tests
* add all font and favicons to add-on
* fix sonarqube warnings
* add unit tests for all favicons
* fix link
(cherry picked from commit 3d422f9249)
* update compose help link
(cherry picked from commit 6d4ff0d508)
* fix link
(cherry picked from commit 3d422f9249)
* fix rel build run
* Update ghcr.io/hassio-addons/base Docker tag to v17.2.3
* Update ghcr.io/hassio-addons/base Docker tag to v17.2.4
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Stefan Allius <stefan.allius@t-online.de>
* Add two states build from the measurements
- Batterie Status calculated from the batt current
- Power Supply State calc from the out Power
* improve test coverage
* Cleanup MQTT json format for DCU batterie
- add hw and sw version
- rename total generation into total charging energy
- rename cell temperature sensors
- restructure json format
- adapt unit tests
* revert changed test packages
* move forward_at_cmd_resp into InfosG3P class
- the variable is shared between the two connections
of an inverter. One is for the TSUN cloud and the
other for the device.
* use inverter class to share values between
the two protocol instances of a proxy
- move forward_at_cmd_resp into class InverterG3P
- store inverter ptr in Solarman_V5 instances
- add inverter ptr to all constructurs of protocols
- adapt doku and unit tests-
- add integration tests for AT+ commands which
check the forwarding from and to the TSUN cloud
* adapt and improve the unit tests
- fix node_id declaration, which always has a / at
the end. See config grammar for this rule
- set global var test to default after test run
* Update dependency flake8 to v7.2.0
* Flake8: ignore F821 errors, due of False Positives
# cleanup some unit tests
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Stefan Allius <stefan.allius@t-online.de>
* set equipment model dor DCU1000 devices
* DCU1000: add temp sensor and mppt states
* DCU1000: add total generation
* add more DCU1000 registers for MODBUS polling
* improve names of batterie measurements
* add more diagnostic registers
* adapt unit tests
* move uml files into subfolder
* add sensors for batterie cell voltages
* swap On and Off for MPPT status