The markdown parsing is broken/disabled for release notes. Sorry about that, I'm chasing the source of a crash that's been bringing this website down for the last couple of days.
### Features
- Nowcasting - predicted turbulence [docs](https://yamasee.github.io/skypath-ios-sdk-docs/docs/Advanced/Nowcast)
- Live Flights - SkyPath reporting aircraft [docs](https://yamasee.github.io/skypath-ios-sdk-docs/docs/Advanced/LiveFlights)
- Location Injection - provide location from an external source (AID) [docs](https://yamasee.github.io/skypath-ios-sdk-docs/docs/Basic/Location#location-injection)
- Buffer and Simplify functions to easier build route corridor polygon [docs](https://yamasee.github.io/skypath-ios-sdk-docs/api/2.2.0/Extensions/Array.html)
### Improvements
- Updated inline and usage documentation
- Various other improvements and performance optimizations
[Migrate from 2.1.x to 2.2.x](https://yamasee.github.io/skypath-ios-sdk-docs/docs/Migration/Migration%20v2.2)
Fix turbulence data filtering by `TurbulenceQuery.sevs` when calling `SkyPath.turbulence(with:)`.
Added `SkyPath.useCalculatedPressureAltitudeForSelf` flag to enable calculated pressure altitude [docs](https://yamasee.github.io/skypath-ios-sdk-docs/api/2.1.7/Classes/SkyPath.html#/s:10SkyPathSDK0aB0C36useCalculatedPressureAltitudeForSelfSbvp)
Fixed an invalid longitude issue when a hexagon crosses the antimeridian (the 180-degree line).
Fixed an issue when some heavy data were loaded from a file on a main thread on SDK start that caused a short hang.
Some small amounts of data loading from a file or JSONDecoder work can still happen on the main thread for proper work, but it will not block the main thread for a long time and cause issues.
Add `SkyPath.shared.setMapLayer(enabled: true)` to set map layer is enabled or not flag when showing/hiding the SkyPath data layer on the map [docs](https://yamasee.github.io/skypath-ios-sdk-docs/api/2.1.4/Classes/SkyPath.html#/s:10SkyPathSDK0aB0C11setMapLayer7enabledySb_tF)
Fix an issue when viewport or route corridor (polygon) data could not be fetched immediately on setting `SkyPath.shared.dataQuery.viewport` or `SkyPath.shared.dataQuery.polygon` if the previous corresponding viewport or corridor fetch request was still in progress at this moment.
Please remove force fetch by `SkyPath.shared.fetchData(refresh: true)` after setting `SkyPath.shared.dataQuery.viewport` or `SkyPath.shared.dataQuery.polygon` if you used it as a workaround.
Fix an issue when a viewport data could not be fetched immediately on setting `SkyPath.shared.dataQuery.viewport` if the previous viewport fetch request was still in progress at this moment.
Please remove force fetch by `SkyPath.shared.fetchData(refresh: true)` after setting `SkyPath.shared.dataQuery.viewport` if you used it as a workaround.
Improve refreshing device session when the same user id was used on a different device
Added [SkyPath.isStarted](https://yamasee.github.io/skypath-ios-sdk-docs/api/2.1.1/Classes/SkyPath.html#/s:10SkyPathSDK0aB0C9isStartedSbvp) to check if need to call start().