Skip to content

Releases: oznetmaster/SimpleWeatherClient

v2.0.0

Choose a tag to compare

@github-actions github-actions released this 21 Sep 11:54

SimpleWeatherClient 2.0.0

Adds One Call API 4.0 support while preserving existing One Call 3.0 and free-endpoint access. Existing weather-query methods and result properties remain available; the serializer-dependent model constructors are replaced with FromJson factories.

  • Select Automatic, OneCall3, OneCall4 or Free independently for each WeatherController, using the same account key where it has access. Explicit selections never silently switch services. Access denial identifies the selected service without exposing the key.
  • Automatic selection prefers 3.0, then 4.0, then free, advancing only when access is denied. Existing 3.0 subscribers retain their service; no account migration or subscription change is performed.
  • Use GetWeatherSnapshotAsync for current conditions and forecasts together. The 3.0 route uses one request. Set includeHourly: false for daily-only applications to avoid unused hourly pages: 4.0 normally needs two successful requests instead of five.
  • Read paginated 4.0 forecasts up to eight daily and 48 hourly records, preserve requested units, and use HTTPS even when the service supplies HTTP continuation links.

An enabled OpenWeather subscription is still required for the selected One Call service. The library does not enforce an account quota or schedule polling. Automatic probes, geocoding, pagination, other applications and account terms affect usage; see request counts.

The library continues to target .NET Framework 4.7.2 and .NET 10. This release covers existing current/daily/hourly models, not the complete 4.0 history, long-range, minutely or alert-detail APIs.

Newtonsoft.Json has been removed from the library. See the 2.0 migration guide for the replacement fragment factories, changed JSON exceptions and net472 deployment dependencies.

The unused log4net dependency has also been removed; SimpleWeather contains no logging calls.

The console sample uses a combined current/daily snapshot. The widget requests daily forecasts without unused hourly pages and displays up to seven available days. The desktop application continues to request current conditions only. All three consume the same updated library.

NUnit 5 test package 1.1.0 - 1 October 2026

This is a test-tooling update attached to the existing release. Product binaries, product version and NuGet packages are unchanged.

Processor test package | Documentation | Validation receipt | Build sources | SHA-256 checksums

Uses NUnit 5.0.0. 177 offline cases passed in each of two runs from the packaged assembly on Windows. All packaged suite identities were checked against source discovery. Live/manual and processor runtime tests were not repeated for this migration; previous hardware results do not certify this package. The test package version is independent of the product version.

v1.0.3

Choose a tag to compare

@github-actions github-actions released this 12 Sep 07:17

SimpleWeatherClient v1.0.3

This patch corrects weather and geocoding results and adds an NUnit regression suite for .NET Framework 4.7.2 and .NET 10. Public constructor and method signatures remain compatible.

Fixes

  • Weather and geocoding requests format coordinates consistently across regional settings and correctly escape query values.
  • City searches parse the returned JSON objects, and geocoding accepts both integral and fractional coordinates.
  • HTTP responses are disposed after reading. Calls on a disposed weather controller report ObjectDisposedException consistently.
  • Numeric string readings parse independently of the current culture.
  • One Call current weather includes wind and sun times; free current weather preserves station metadata.
  • Free forecasts populate temperature, wind and cloud fields correctly. Hourly wind direction uses the returned bearing, and precipitation probability is reported as a percentage (for example, 0.65 becomes 65).
  • Daily forecast summaries select the weather nearest noon and respect fractional-hour time zone offsets when grouping readings.

Tests and live option

SimpleWeather.Tests is included in the existing Visual Studio solution and uses the NUnit adapter. Validation passed 117 offline tests and four live tests on each target framework. CI and release builds run the offline suite only.

The separate Live fixture checks actual current weather, forecasts, reverse geocoding and city search through your OpenWeather account. Live tests are disabled by default. Opt in with live.runsettings or the private JSON enable flag; API requests count against the account's applicable quota. Account credentials and local settings are excluded from Git and build/publish output. A placeholder settings example is included.

See the testing guide for Visual Studio, command-line instructions and private configuration.

Dependencies and upgrading

This release updates log4net to 3.4.0 and the .NET Framework Microsoft.Bcl.AsyncInterfaces and Microsoft.Bcl.Memory dependencies to 10.0.12. The library continues to target net472 and net10.0.

Update the SimpleWeatherClient NuGet package to 1.0.3. No source migration is required, but applications will now receive corrected measurements and percentages where earlier releases returned incomplete or incorrect values. The test project itself is not published to NuGet.

See the changelog for the complete entry.

v1.0.2

Choose a tag to compare

@oznetmaster oznetmaster released this 02 Jun 04:34

Full Changelog: v1.0.1...v1.0.2

v1.0.1

Choose a tag to compare

@oznetmaster oznetmaster released this 02 Jun 04:07
Attach NuGet packages to GitHub releases