-
Notifications
You must be signed in to change notification settings - Fork 41
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Integration branch for FastAPI and other PRs #177
Commits on Oct 11, 2024
-
* FastAPI migration: - Use pydantic model classes as input parameters to the data/calculation classes. - Interface field names changed to constructor parameter names (for simplicity only during transition, should be updated in a followup PR). - Add basic interface requirements (e.g. some values > 0, etc.). * Update tests for new data format. * Python requirement down to 3.9 (TypeGuard no longer needed) * Makefile: Add helpful targets (e.g. development server with reload)
Configuration menu - View commit details
-
Copy full SHA for 9e3c756 - Browse repository at this point
Copy the full SHA 9e3c756View commit details
Commits on Oct 12, 2024
-
Move API doc from README to pydantic model classes (swagger)
* Add API to sphynx doc (rudimental, due to outdated plugin). * Link to swagger.io with own openapi.yml. * Commit openapi.json and check with pytest for changes so the documentation is always up-to-date.
Configuration menu - View commit details
-
Copy full SHA for 8458684 - Browse repository at this point
Copy the full SHA 8458684View commit details
Commits on Oct 19, 2024
-
Add package API documentation generation
Add generation of the API documentation for akkudoktoreos and akkudoktoreosserver packages. The API documentation is generated by the Sphinx autosummary extension. Signed-off-by: Bobby Noelte <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2277d1f - Browse repository at this point
Copy the full SHA 2277d1fView commit details -
Enable Google style source commenting and documentation generation.
Enable automatic documentation generation from Google style docstrings in the source. Signed-off-by: Bobby Noelte <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a1cef1e - Browse repository at this point
Copy the full SHA a1cef1eView commit details -
Check Google style source commenting.
Check Google style commenting by the appropriate ruff rules. Commenting is _NOT_ enforced. Missing docstrings are ignored. Minor commenting quirks of the code base are adapted. Signed-off-by: Bobby Noelte <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 882aae6 - Browse repository at this point
Copy the full SHA 882aae6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 906c652 - Browse repository at this point
Copy the full SHA 906c652View commit details -
Configuration menu - View commit details
-
Copy full SHA for f6e8ada - Browse repository at this point
Copy the full SHA f6e8adaView commit details -
- replace outdated modules with src - removed cov arg from pyproject toml - add settings
Configuration menu - View commit details
-
Copy full SHA for 6d09e44 - Browse repository at this point
Copy the full SHA 6d09e44View commit details -
Configuration menu - View commit details
-
Copy full SHA for 53905cb - Browse repository at this point
Copy the full SHA 53905cbView commit details -
Bump sphinx from 8.0.2 to 8.1.3
Bumps [sphinx](https://github.com/sphinx-doc/sphinx) from 8.0.2 to 8.1.3. - [Release notes](https://github.com/sphinx-doc/sphinx/releases) - [Changelog](https://github.com/sphinx-doc/sphinx/blob/master/CHANGES.rst) - [Commits](sphinx-doc/sphinx@v8.0.2...v8.1.3) --- updated-dependencies: - dependency-name: sphinx dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 685e855 - Browse repository at this point
Copy the full SHA 685e855View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7ab9314 - Browse repository at this point
Copy the full SHA 7ab9314View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1f50eb5 - Browse repository at this point
Copy the full SHA 1f50eb5View commit details -
Streamline Dockerfile, remove unused deps
* Dockerfile: Use non-root user, buildx cache, setup for readonly container, remove unused apt deps. For now don't install pip package and keep development flask server as this will be replaced in the future (fastapi). Then a proper webserver (e.g. nginx) should be used and the pip package can be created and deployed just to the run-stage (with the webserver). * docker-compose: Set to readonly (anonymous volumes declared in Dockerfile should maintain all writable data). Mount config.py for easier development. Should be replaced by environment support for all config file variables. * Remove unused runtime dependencies: mariadb, joblib, pytest, pytest-cov. * Move pytest-cov to dev dependencies. * Add output_dir to config.py. * Fix visualization_results.pdf endpoint. * Update docs.
Configuration menu - View commit details
-
Copy full SHA for e08e2b5 - Browse repository at this point
Copy the full SHA e08e2b5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0923584 - Browse repository at this point
Copy the full SHA 0923584View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7763b1f - Browse repository at this point
Copy the full SHA 7763b1fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2952cda - Browse repository at this point
Copy the full SHA 2952cdaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 676b4d8 - Browse repository at this point
Copy the full SHA 676b4d8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1f0ee74 - Browse repository at this point
Copy the full SHA 1f0ee74View commit details -
Add documentation to class_pv_forecast.py.
Added documentation. Beware mostly generated by ChatGPT. Signed-off-by: Bobby Noelte <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4186937 - Browse repository at this point
Copy the full SHA 4186937View commit details -
Add CacheFileStore, to_datetime and get_logger utilities.
The `CacheFileStore` class is a singleton-based, thread-safe key-value store for managing temporary file objects, allowing the creation, retrieval, and management of cache files. The utility modules offer a flexible logging setup (`get_logger`) and utilities to handle different date-time formats (`to_datetime`, `to_timestamp`). - Cache files are automatically valid for the the current date unless specified otherwise. This is to mimic the current behaviour used in several classes. - The logger supports rotating log files to prevent excessive log file size. - The `to_datetime` and `to_timestamp`functions support a wide variety of input types and formats. They provide the time conversion that is e.g. used in PVForecast. Signed-off-by: Bobby Noelte <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1fbdd18 - Browse repository at this point
Copy the full SHA 1fbdd18View commit details -
Improve testability of PVForecast
Improvements for testing of PVForecast - Use common utility functions to allow for general testing at one spot. - to_datetime - CacheFileStore - Use logging instead of print to easily capture in testing. - Add validation of the json schema for Akkudoktor PV forecast data. - Allow to create an empty PVForecast instance as base instance for testing. - Make process_data() complete for filling a PVForecast instance for testing. - Normalize forecast datetime to timezone of system given in loaded data. - Do not print report but provide report for test checks. - Get rid of cache file path using the CachFileStore to automate cache file usage. - Improved module documentation. Signed-off-by: Bobby Noelte <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d38b24a - Browse repository at this point
Copy the full SHA d38b24aView commit details -
Add test for PVForecast and newly extracted utility modules.
- Add test for PVForecast - Add test for CacheFileStore in the new cachefilestore module - Add test for to_datetime in the new datetimeutil module - Add test for get_logger in the new logutil module Signed-off-by: Bobby Noelte <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7ad1eea - Browse repository at this point
Copy the full SHA 7ad1eeaView commit details -
Configuration menu - View commit details
-
Copy full SHA for ba52724 - Browse repository at this point
Copy the full SHA ba52724View commit details -
Tool to integrate EOS PRs in an integration branch.
This script automates the integration of multiple GitHub pull requests (PRs) into a specified integration branch. It fetches each PR, creates a branch from the PR, rebases the branch onto the integration branch, and then merges it back into the integration branch. The process is logged to a branch-specific log file, and if any step fails, the script exits and saves the current progress (PR number and step) to a branch-specific JSON file. The script can be rerun, and it will resume from where the last step failed. If the script is run again on the same branch without providing PR numbers, it will reuse the PR numbers from the first run. Signed-off-by: Bobby Noelte <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1f5abf3 - Browse repository at this point
Copy the full SHA 1f5abf3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 14a1be6 - Browse repository at this point
Copy the full SHA 14a1be6View commit details