Skip to content

Mapbox Maps: v10.0.0-rc.8

Compare
Choose a tag to compare
@sdk-release-bot sdk-release-bot released this 08 Sep 23:53
· 1185 commits to main since this release

Dependency requirements:

  • Compatible version of MapboxCoreMaps: 10.0.0-rc.8
  • Compatible version of MapboxCommon: 18.0.0
  • Compatible version of Xcode: 12.5
  • Compatible version of MacOS: 11.15

Changes

Breaking changes ⚠️

  • QueriedFeature.feature is now of type Turf.Feature? instead of MapboxCommon.Feature. (#628)
  • Enables error notification in offline mode if the required resource is missing in cache (before map did not emit any notification in this case) (#628)
  • Suppresses error notifications on missing volatile tiles in offline mode (#628)
  • Adapt setBounds to gl-js behavior: constraining of coordinates and zoom level is now stricter to prevent out of bounds map area to be visible in the viewport (#628)
  • Add HTTP interceptor API - HttpServiceInterface has a new method setInterceptor that must be implemented (#628)
  • Geometry now refers to Turf.Geometry instead of MapboxCommon.Geometry. (#622)
  • Feature now refers to Turf.Feature instead of MapboxCommon.Feature. (#642)
  • Renamed ColorRepresentable to StyleColor (#650)
  • Removed the argument label from StyleColor's UIColor initializer (#650)
  • Renamed ColorRepresentable.rgbaDescription to StyleColor.rgbaString. (#650)
  • Changed StyleColor's Encodable implementation to always encode an rgba color string instead of encoding an rgba expression (#650)
  • Updated the extension on UIColor that adds ExpressionArgumentConvertible to return an rgba color string instead of an rgba expression. (#650)
  • Annotation managers now sync with their backing source and layer only once per display link. Use syncSourceAndLayerIfNeeded() to force the sync to happen earlier. (#650, #621)
  • The layerType argument to Style._layerPropertyDefaultValue(for:property:) is now of type LayerType instead of String (#650)
  • Expression decoding will now fail if the operator is missing (#650)
  • PointAnnotationManager.textVariableAnchor is now of type [TextAnchor]? instead of [String]? (#650)
  • PointAnnotationManager.textWritingMode is now of type [TextWritingMode]? instead of [String]? (#650)

Features ✨ and improvements 🏁

  • It is no longer necessary to import Turf. (#622)
  • Enable instant transitions for data driven paint layer properties (#628)
  • Offload networking tasks at the init phase (#631)
  • 3D pucks will now be rendered over other 3D content and occluded by terrain (#641)
  • Added a public, failable, component-wise initializer to StyleColor (#650)
  • Updated StyleColor's Decodable support to be able to handle rgba color strings as well as rgba expressions (#650)
  • Made generated enums conform to CaseIterable (#650)
  • Location puck can now hide the accuracy ring. The default value is to hide the accuracy ring. In order to enable the ring, set the showAccuracyRing property in Puck2DConfiguration to true. #629
  • Annotation interaction delegates are only called when at least one annotation is detected to have been tapped (638)

Bug fixes 🐞

  • Fix volatile tiles disappearing on "not modified" response (#628)
  • Fix crash in MapboxMap.clearData() (#628)
  • Trigger map redraw when feature state changes (#628)
  • Do not start background task if telemetry collection is disabled (#631)
  • Fix KVC decoding for iOS 15 (#631)
  • The GeoJSON source backing an AnnotationMnager is now removed correctly when an AnnotationManager is deallocated (#633)
  • Updated annotations to use rgbaString and init(rgbaString:) when serializing and deserializing StyleColors (#650)
  • Annotation managers now properly restore the default values of any annotation or common style properties that are reset to nil, with the exception of text-field and line-gradient for which there are currently issues to resolve between mapbox-maps-ios and mapbox-core-maps-ios. (#650)
  • Fixed Expression decoding when second array element could be an operator (#650)
  • Fixed an issue where layer persistence was not maintained after calling Style._moveLayer. (#643)
  • Fix issue where annotations were not being returned to annotation interaction delegates (638)

Breaking changes ⚠️

  • TileStore.tileRegionGeometry(forId: String, completion: @escaping (Result<MapboxCommon.Geometry, Error>) -> Void) has been updated to TileStore.tileRegionGeometry(forId: String, completion: @escaping (Result<Geometry, Error>) -> Void). (#661)

Direct download

Link to download binaries (append your own Mapbox access token scoped with DOWNLOADS:READ):

https://api.mapbox.com/downloads/v2/mobile-maps-ios/releases/ios/10.0.0-rc.8/MapboxMaps.zip?access_token=<access-token>