Mapbox welcomes participation and contributions from everyone.
AnnotationManager
no longer conforms toObserver
and no longer has apeer
(#246)AnnotationSupportableMap
is now internal (#246)
- Fixes an issue that could cause issues with annotations including causing them to not be selectable (#246)
- The
CameraManager.moveCamera
method has been removed. (#217) UIView.animate
is no longer supported. Instead, useCameraAnimators
. (#217)- Developers should make camera changes directly to
MapView
's camera properties. Previously, changes could be applied toMapView.cameraView
. (#217) CameraAnimator
objects are managed by developers and should be stored by developers to prevent the animations from falling out of scope.LocationOptions.showUserLocation
has been removed. UseLocationOptions.puckType
instead, setting it tonil
if you do not want to show the user location.LocationManager.showUserLocation
has also been removed. (#203)- Make model layer internal and refactor for increased public API clarity
(#194, #198)
ModelLayer
andModelSource
are now internalshouldTrackLocation
flag has been removed fromLocationConsumer
because it was never usedPuckType.puck2D
's associated value is now non-optional. It still has a default value corresponding to the previous behaviorLocationPuckManager
is now internal- Renaming:
LocationPuck
is nowPuckType
LocationOptions.locationPuck
is nowLocationOptions.puckType
LocationIndicatorLayerViewModel
is nowPuck2DConfiguration
PuckModelLayerViewModel
is nowPuck3DConfiguration
- Updates dependencies to MapboxCoreMaps 10.0.0-beta.17 and MapboxCommon 10.0.2.
(#193)
- [rendering] Query rendered features now work for fill-extrusions when terrain is enabled.
- [rendering] Improved terrain rendering performance due to reduction of loaded tiles.
- All layer paint/layout properties can be defined via expressions (#185)
- Added RawRepresentable conformance to StyleURL. Removed enum cases for older style versions. (#168)
- Introduced the platform-driven Drag API for shifting the map’s camera. (#217)
- Introduced
CameraAnimator
, a UIViewPropertyAnimator-based class for animating camera changes. These animators should be created usingCameraManager.makeCameraAnimator
methods. (#217) - Gesture-driven camera changes have been updated to use camera animators. (#217)
- The
AnimatorOwner
enum has been added to track owners for individual animators. (#217) CameraManager.fly(to:)
is now built on camera animators.zoom
,pitch
,bearing
, andcenterCoordinate
keyframes are supported. (#217)- The getter for LocationManager.locationOptions is now public. (#209)
- Added function to get layer identifier for an annotation type. (#189)
- Add PreferredFPS.custom() to add support for custom preferred frames per second values. (#157)
- Fixes an issue in which the puck was not reflecting updates to its configuration (#199)
- Updates MapboxCoreMaps to v10.0.0.beta.16 and MapboxCommon to v10.0.0-beta.12 (#152)
- The above breaking change introduces the new Map Events API which will:
- Simplify the Map API and align it with other weakly typed interfaces (addStyleLayer, addStyleSource, etc.).
- Minimize the effort for addition of new events.
- Expose experimental events.
- Suppress events that a developer hasn't subscribed to.
- Automatically expose new events for Snapshotter (eliminating the need to modify MapObserver and MapSnapshotterObserver separately).
- Events that have been removed:
mapResumedRendering
mapPausedRendering
mapLoadingStarted
renderMapStarted
renderMapFinished
cameraWillChange
cameraIsChanging
- Events that have been renamed:
EventType.Map.mapLoaded
->EventType.Map.loaded
MapEvents.EventKind.cameraDidChange
->MapEvents.EventKind.cameraChanged
- Maps SDK now supports a static bundle via direct download (#149)
- Updates Turf to v2.0.0-alpha.3 (#133)
- Added SwiftUI example. (#78)
- Allow a developer to synchronously update a layer with one API call -- no longer have to retrieve and re-add a layer. (#85)
- MapboxMaps can now be built and tested using Swift Package Manager (#125)
- Prevent pitch and zoom from exceeding limits. Also updates default maximum pitch to 85 degrees. (#103)
- Fixed an issue where quick zoom did not work at higher zoom levels. Also made the duration argument of the setCamera methods non-optional with default of 0. (#109)
- GestureManager.delegate is now weak (#134)
- Using heuristic to provide pan drift when the map is pitched (#120)
- Rely on consumer provided view models directly to customize location pucks (#86)
- Update Mapbox Common for iOS to v10.0.0-beta.9.1 and MapboxCoreMaps to v10.0.0-beta.14.1. (#89)
- Update to Turf 2.0.0-alpha.2 (#93)
- Expose
presentsWithTransaction
property to better synchronize UIKit elements with theMapView
. (#94) - Add MapEvents.styleFullyLoaded. (#90)
- Refactor Annotation "properties" (#70)
- Fix Inconsistent Camera Heading (#68)
- Fix issue where updates to ornament options were not honored (#84)
- Dictionaries passed to expressions are now sorted by default (#81)
- Fixed: Pan drift did not work correctly when bearing was non-zero. (#99)
- Fix issue where toggling LocationOptions.showsUserLocation resulted in options not being updated (#101)
- Pan drift for pitched maps will be disabled. A solution for smooth drifting is being worked on. (#100)
V10 is the latest version of the Mapbox Maps SDK for iOS. v10 brings substantial performance improvements, new features like 3D terrain and a more powerful camera, modern technical foundations, and a better developer experience.
To get started with v10, please refer to our migration guide.
Please visit our issues to see open bugs, enhancements, or features requests.