Releases: EloyEspinosa/Weather.NET
Release list
Add geocoding and rework maps
Added support for OpenWeather's GeoCoding API, including a new model and the methods:
- CoordinatesByLocationName and CoordinatesByLocationNameAsync
- CoordinatesByZipCode and CoordinatesByZipCodeAsync
- LocationNameByCoordinates and LocationNameByCoordinatesAsync
Reworked WeatherMap class:
- Renamed class, from WeatherMap to Maps
- Added support for OpenStreetMap's Base Street Map (methods GetStreetMapUrl and DownloadStreetMap)
- Clarified parameter usage (tile coordinates vs. geographical coordinates)
- Added conversion from geographical to tile coordinates (function LatLongToTileCoordinates)
Fixed deadlock issue on synchronous calls to async methods.
Upgrade to .NET 8
Updated to the latest LTS .NET version, and upgraded to the newest Newtonsoft.Json version.
Rain and Snow Volume properties are now double
- Fixed a bug (#2) where rain volume properties were set to integers, even though the value could a decimal number, so changed all of the rain volume properties from
int?todouble?. - Also changed all of the snow volume properties from
int?todouble?.
Added DateTime objects
- Changed the dates from unix seconds to DateTime objects, and the old dates are now moved to a separate property. Example: Models.WeatherModel.AnalysisDate is moved to Models.WeatherModel.AnalysisDateUnix and Models.WeatherModel.AnalysisDate now contains a DateTime object.
- Removed dates in unix seconds that accounted for timezones, instead of that, use the new DateTime objects with the timezone offset added. Ex:
Models.WeatherModel.AnalysisDate.AddSeconds(Models.WeatherModel.Timezone). - Added missing nullable properties like the wind gust, rain information and snow information.
Added DateTime objects (Beta)
- Changed the dates from unix seconds to DateTime objects, and the old dates are now moved to a separate property. Example: Models.WeatherModel.AnalysisDate is moved to Models.WeatherModel.AnalysisDateUnix and Models.WeatherModel.AnalysisDate now contains a DateTime object.
- Removed dates in unix seconds that accounted for timezones, instead of that, use the new DateTime objects with the timezone offset added. Ex:
Models.WeatherModel.AnalysisDate.AddSeconds(Models.WeatherModel.Timezone). - Added missing nullable properties like the wind gust, rain information and snow information.
Added One Call API support
From 1.2.0:
- Added support for the One Call API:
- OneCallApi contains extensions for WeatherClient that support calls to the API.
- Models.OneCallModel contains the model of the response of all One Call API calls.
- Enums.ExcludeOneCall contains parameters in the One Call response that can be excluded.
- RestApi now does not have synchronous methods.
From 1.3.0-rc.1:
- Fixed a bug where Measurement and Language wouldn't work in historical One Call API calls.
Added OneCall API support (Release Candidate 1)
Note: This version contains a breaking bug where Measurement and Language don't work in historical One Call API calls.
- Added support for the One Call API:
- OneCallApi contains extensions for WeatherClient that support calls to the API.
- Models.OneCallModel contains the model of the response of all One Call API calls.
- Enums.ExcludeOneCall contains parameters in the One Call response that can be excluded.
- RestApi now does not have synchronous methods.
Note that this version is a prerelease that may contain bugs, that you can report in the project's repository, since this version is a prerelease, the documentation may not be updated to this version.
Added Timezone Analysis dates and Sunset/Sunrise times.
Added new properties to Models.WeatherModel.WeatherModel:
- AnalysisDateTimezone: Gets the analysis date, accounting for the location's timezone.
- SunriseTimezone: Gets the sunrise time, accounting for the location's timezone.
- SunsetTimezone: Gets the sunset time, accounting for the location's timezone.
Added Air Pollution support.
New features!
- Now the Air Pollution API is supported with the AirPollution class.
- The responses are given in a new model, Models.PollutionModel.PollutionModel.
- Now the Get...() methods in WeatherClient are in a static class called RestApi, and they are all now internal, not public.
- WeatherModel.Cod is now WeatherModel.StatusCode.
- GlobalUsings.cs is a new file of only global usings, for clearer code.
ZIP Codes are now strings
- Now the ZIP Code needs to be a string instead of a long, to account for different ZIP formats in different countries.
- Now the Weather.NET logo looks normal.