Mapbox Maps: v10.0.0-rc.8
·
1857 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.featureis now of typeTurf.Feature?instead ofMapboxCommon.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
setInterceptorthat must be implemented (#628) Geometrynow refers toTurf.Geometryinstead ofMapboxCommon.Geometry. (#622)Featurenow refers toTurf.Featureinstead ofMapboxCommon.Feature. (#642)- Renamed
ColorRepresentabletoStyleColor(#650) - Removed the argument label from
StyleColor'sUIColorinitializer (#650) - Renamed
ColorRepresentable.rgbaDescriptiontoStyleColor.rgbaString. (#650) - Changed
StyleColor'sEncodableimplementation to always encode an rgba color string instead of encoding an rgba expression (#650) - Updated the extension on
UIColorthat addsExpressionArgumentConvertibleto 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
layerTypeargument toStyle._layerPropertyDefaultValue(for:property:)is now of typeLayerTypeinstead ofString(#650) Expressiondecoding will now fail if the operator is missing (#650)PointAnnotationManager.textVariableAnchoris now of type[TextAnchor]?instead of[String]?(#650)PointAnnotationManager.textWritingModeis 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'sDecodablesupport 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
showAccuracyRingproperty inPuck2DConfigurationtotrue. #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
AnnotationMnageris now removed correctly when anAnnotationManageris deallocated (#633) - Updated annotations to use
rgbaStringandinit(rgbaString:)when serializing and deserializingStyleColors (#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-fieldandline-gradientfor 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 toTileStore.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>