Add documentation. (#321)

Add documentation that covers:

- Prediction
- Measuremnt
- REST API

Add Python scripts that support automatic documentation generation using the Sphinx
sphinxcontrib.eval extension.

Add automatic update/ test for REST API documentation.

Filter proxy endpoints from REST API documentation.

Signed-off-by: Bobby Noelte <b0661n0e17e@gmail.com>
This commit is contained in:
Bobby Noelte
2025-01-03 00:31:20 +01:00
committed by GitHub
parent 4cb6dc7270
commit 1866055478
27 changed files with 7565 additions and 6131 deletions

View File

@@ -11,8 +11,6 @@ logger = get_logger(__name__)
class LoadCommonSettings(SettingsBaseModel):
# Load 0
load_provider: Optional[str] = Field(
default=None, description="Load provider id of provider to be used."
)
load_name: Optional[str] = Field(default=None, description="Name of the load source.")

View File

@@ -18,13 +18,12 @@ logger = get_logger(__name__)
class LoadDataRecord(PredictionRecord):
"""Represents a load data record containing various load attributes at a specific datetime."""
load_mean: Optional[float] = Field(default=None, description="Predicted load mean value (W)")
load_mean: Optional[float] = Field(default=None, description="Predicted load mean value (W).")
load_std: Optional[float] = Field(
default=None, description="Predicted load standard deviation (W)"
default=None, description="Predicted load standard deviation (W)."
)
load_mean_adjusted: Optional[float] = Field(
default=None, description="Predicted load mean value adjusted by load measurement (W)"
default=None, description="Predicted load mean value adjusted by load measurement (W)."
)

View File

@@ -18,8 +18,8 @@ logger = get_logger(__name__)
class PVForecastDataRecord(PredictionRecord):
"""Represents a pvforecast data record containing various pvforecast attributes at a specific datetime."""
pvforecast_dc_power: Optional[float] = Field(default=None, description="Total DC power (W)")
pvforecast_ac_power: Optional[float] = Field(default=None, description="Total AC power (W)")
pvforecast_dc_power: Optional[float] = Field(default=None, description="Total DC power (W).")
pvforecast_ac_power: Optional[float] = Field(default=None, description="Total AC power (W).")
class PVForecastProvider(PredictionProvider):

View File

@@ -23,13 +23,12 @@ class PVForecastImportCommonSettings(SettingsBaseModel):
"""Common settings for pvforecast data import from file or JSON string."""
pvforecastimport_file_path: Optional[Union[str, Path]] = Field(
default=None, description="Path to the file to import pvforecast data from."
default=None, description="Path to the file to import PV forecast data from."
)
pvforecastimport_json: Optional[str] = Field(
default=None,
description="JSON string, dictionary of PV forecast float value lists."
"Keys are 'pvforecast_dc_power', 'pvforecast_ac_power'.",
description="JSON string, dictionary of PV forecast value lists.",
)
# Validators

View File

@@ -56,7 +56,7 @@ class WeatherDataRecord(PredictionRecord):
default=None, description="Low Clouds (% Sky Obscured)"
)
weather_medium_clouds: Optional[float] = Field(
None, description="Medium Clouds (% Sky Obscured)"
default=None, description="Medium Clouds (% Sky Obscured)"
)
weather_high_clouds: Optional[float] = Field(
default=None, description="High Clouds (% Sky Obscured)"