What's Changed
BREAKING CHANGES
-
Method naming changes across all client classes for consistency
- Standardized naming pattern:
{Method}{ContextPrefix}{Resource}(e.g.,GetForecastAdvancedPvPower) - LiveClient method names now properly prefixed with "Live":
GetAdvancedPvPower→GetLiveAdvancedPvPowerGetAggregations→GetLiveAggregationsGetRooftopPvPower→GetLiveRooftopPvPowerGetRadiationAndWeather→GetLiveRadiationAndWeather
- ForecastClient method names now properly prefixed with "Forecast":
GetAdvancedPvPower→GetForecastAdvancedPvPowerGetAggregations→GetForecastAggregationsGetRooftopPvPower→GetForecastRooftopPvPowerGetRadiationAndWeather→GetForecastRadiationAndWeather
- HistoricClient method names now properly prefixed with "Historic":
GetAdvancedPvPower→GetHistoricAdvancedPvPowerGetRooftopPvPower→GetHistoricRooftopPvPowerGetRadiationAndWeather→GetHistoricRadiationAndWeather
- TmyClient method names now properly prefixed with "Tmy":
GetAdvancedPvPower→GetTmyAdvancedPvPowerGetRooftopPvPower→GetTmyRooftopPvPowerGetRadiationAndWeather→GetTmyRadiationAndWeather
- Standardized naming pattern:
-
SDK update checking is now opt-in instead of opt-out
- Changed default
checkForUpdatesparameter fromtruetofalseinBaseClientconstructor - Environment variable renamed from
SUPPRESS_SDK_UPDATE_CHECKtoCHECK_SDK_UPDATE - Function renamed from
IsSdkUpdateCheckSuppressed()toIsSdkUpdateCheckEnabled() - Update logic changed from suppression-based (default ON) to enablement-based (default OFF)
- Updated user message to reflect opt-in nature: "Automatic update checks are opt-in. Enable by setting CHECK_SDK_UPDATE='true'"
- Changed default
Added
- Support for verbose output control via
SOLCAST_VERBOSE_OUTPUTenvironment variable- When set to
true, API responses are logged to stderr for debugging and MCP scenarios - Default behavior remains silent for normal usage
- When set to
Improved
- Enhanced error handling and exception management
- Added comprehensive try-catch blocks to all API methods
- Improved parameter details in error messages for better debugging
- Added proper HTTP status code reporting in exceptions
- Maintained proper exception hierarchy (UnauthorizedApiKeyException, HttpRequestException, etc.)
Full Changelog: v1.0.2...v2.0.0