v10.10.0
·
910 commits
to main
since this release
Features ✨ and improvements 🏁
- 🆕 The
ViewAnnotationManager/camera(forAnnotations:padding:bearing:pitch:)
method helps you to calculate a camera to fit a list of view annotations. Pass it directly tofly
orease
methods to animate a camera change. Check out the newFrameViewAnnotationsExample
example to see the new API in action. (#1634) - 🆕
ViewAnnotationManager/annotations
now provides access to a map of view annotations and associatedViewAnnotationOptions
. (#1621) - 🆕 PointAnnotationManager now supports clustering according to a set of ClusterOptions. Check out a new
PointAnnotationClusteringExample
example to see API usage samples. (#1651)-
Video preview
ClusterOptions.preview.mp4
-
- 🆕 Annotations now support
isDraggable
andisSelected
properties to manipulate annotations on the map. See an updatedCircleAnnotationExample
example. (#1659)-
Video preview
draggableAnnotations.mp4
-
- 🆕
MapInitOptions
now has an optionalstyleJSON
argument to load a string version style. (#1686) - 🆕 With
MapboxMap/shouldRenderWorldCopies
you now have control of whether to show copies of the World in Mercator projection. (#1684) - We added a new
ViewAnnotationAnimationExample
example on how to animate a view annotation along the route. (#1639)-
Video preview
Preview.mp4
-
- GeoJSON source parsing now happens out of the main thread.
MapLoadingError
event will be emitted in case of invalid data. (#1777) - MapView local database is now excluded from iCloud backup. (#1777)
- There are some optimisations in Metal Shaders to boost MapView rendering performance. (#1777)
Bug fixes 🐞
- The
loadStyleURI/loadStyleJSON
APIs will no longer call the completion handler more than once if some nested loading error occurs. (#1665) - View annotations are no longer shown erroneously after an options update.(#1627)
- The map is now prevented from being rendered in Background state. This aligns better with the Scene lifecycle API and respects the scene/application activation status. As a result, rendering artifacts are no longer an issue after the app is coming from Background state. (#1675)
- Fix a memory leak when the viewport is deallocated while transition is running. (#1691)
- Fix issue with simultaneous recognition of tap gesture. (#1712)
- Fix label localization to properly handle Simplified and Traditional Chinese. (#1687)
- Allow simultaneous recognition of map’s and annotation’s handling gesture recognizers. (#1737)
Dependencies
- Update MapboxCommon to
23.2.1
(#1784). - Update MapboxCoreMaps to
10.10.0
(#1777):-
Changelog
- Features and improvements 🏁
- Update mapbox-common to v23.2.0.
- Eliminate tiles re-creation and re-layout on zooming map with globe, when the camera is trespassing the zoom projection border.
- Use precompiled Metal shaders.
- Avoid tiles re-layout on enabling terrain with zero exaggeration.
- Added API to enable/disable rendering of world copies in mercator mode.
- Asynchronous GeoJSON data parsing when adding a new style source.
- Improve symbol filtering performance when distance-from-camera and pitch expressions are used.
- Reduce number of operations when terrain is used with zero exaggeration.
- Bug fixes
- Handle OOB when getting DEM Data
- Generate mipmaps again after texture updates when Metal backend is used.
- Fix a rare precision issue with symbol and circle layer occlusion when terrain is enabled.
- Fixes a rare crash caused by a race condition during gesture handling.
- Disable location indicator occlusion testing with the terrain when exaggeration is set to 0. This fixes occasional location indicator disappearance.
- Exclude map disk cache files from cloud backups.
- Fix an issue where queried symbol features did not contain associated feature state.
- [iOS] Fix possible crash during map view destruction.
- Clear geojson tiles after the source is updated with empty features in order to eliminate "phantom tile" artefacts and to obviate extra work for keeping empty tiles.
- Eliminate duplicated tile async upload requests - fix a race condition causing a tile rendering the previous layout result.
- Truncate long single line text in symbol layers to prevent rendering artifact.
- Fixes an issue when the mixed usage of patterns and icons caused bleeding of textures.
- Fixes visible tile borders when MSAA enabled.
- Fix LOD and prevent from flickering on enabling terrain with zero exaggeration.
- Setting empty value for a style layer filter now clears the filter.
- Fixes rendering artifacts near tile borders when using terrain with zero exaggeration.
- Fixes fog rendering when terrain is used with zero exaggeration.
- Fix distance-to-center filtering of symbols when terrain is enabled.
- Improved cameraForCoordinate result quality with pitch and with terrain.
- Features and improvements 🏁
-
Dependency requirements:
- Compatible version of Xcode:
13.1.0