Release Notes

Version 0.39.1 - 07/02/2024

General

Breaking changes

  • Removed TPEGTrafficClientConfiguration.InternalTPEGTrafficConfiguration.
  • Removed CLLocationCoordinate2D Equatable protocol conformance.
  • Removed CLLocationCoordinate2D Hashable protocol conformance.
  • Removed TomTomSDKAddonRangeVisualization framework.

Fixes

  • Updated routing default endpoint, which was incorrectly set in Guidance v2, making route calculations impossible for some customers.

Updates

  • TomTomSDKCommon.ADRTunnelRestrictionCode is now available in General Availability.
  • TomTomSDKCommon.AltitudeChangeEfficiency is now available in General Availability.
  • TomTomSDKCommon.AltitudeChangeEnergy is now available in General Availability.
  • TomTomSDKCommon.ChargeLevel is now available in General Availability.
  • TomTomSDKCommon.ChargingConnector is now available in General Availability.
  • TomTomSDKCommon.ChargingParameters is now available in General Availability.
  • TomTomSDKCommon.CombustionEngine is now available in General Availability.
  • TomTomSDKCommon.CombustionVehicleConsumption is now available in General Availability.
  • TomTomSDKCommon.CombustionVehicleEfficiency is now available in General Availability.
  • TomTomSDKCommon.ConformanceLock is now available in General Availability.
  • TomTomSDKCommon.ConformanceLocked is now available in General Availability.
  • TomTomSDKCommon.DrivingSide is now available in General Availability.
  • TomTomSDKCommon.ElectricEngine is now available in General Availability.
  • TomTomSDKCommon.ElectricVehicleConsumption is now available in General Availability.
  • TomTomSDKCommon.ElectricVehicleEfficiency is now available in General Availability.
  • TomTomSDKCommon.EngineType is now available in General Availability.
  • TomTomSDKCommon.HazmatClass is now available in General Availability.
  • TomTomSDKCommon.RoadShield is now available in General Availability.
  • TomTomSDKCommon.Vehicle is now available in General Availability.
  • TomTomSDKCommon.VehicleDimensions is now available in General Availability.
  • TomTomSDKCommon.VehicleError is now available in General Availability.
  • TomTomSDKCommon.VehicleModelID is now available in General Availability.
  • TomTomSDKCommon.VelocityChangeEfficiency is now available in General Availability.
  • TomTomSDKCommon.VoltageRange is now available in General Availability.
  • Updated conversion from Mapbox tiles to NDS tiles.

Location

Updates

  • Aligned action button in Location Preview Panel and replace icons.

Map

Breaking changes

  • TomTomSDKMapDisplay.PolygonOptions.strokeColor is now replaced by TomTomSDKMapDisplay.PolygonOptions.outlineColor.
  • TomTomSDKMapDisplay.PolygonOptions.strokeWidth is now replaced by TomTomSDKMapDisplay.PolygonOptions.outlineWidth.
  • Func RangeVisualizationFactory.create(map:style:) has been renamed to Func create(map:style:isGeoJSONStylizationEnabled:).
  • Removed TomTomSDKMapDisplay.CameraTrackingMode.followRouteNorthUp.
  • Renamed fov parameter in TomTomSDKMapDisplay.ControlPoint initializer to fieldOfView.
  • Renamed TomTomSDKMapDisplay.ControlPoint.fov to TomTomSDKMapDisplay.ControlPoint.fieldOfView.
  • Renamed TomTomSDKMapDisplay.FollowCameraOperatorConfig.defaultFov to TomTomSDKMapDisplay.FollowCameraOperatorConfig.defaultFieldOfView.
  • Renamed TomTomSDKMapDisplay.FollowCameraOperatorConfig.showCombinedInstructionMaxScale to TomTomSDKMapDisplay.FollowCameraOperatorConfig.combinedInstructionMaxScale.
  • Renamed TomTomSDKMapDisplay.FollowCameraOperatorConfig.showCombinedInstructionMaxZoomChange to TomTomSDKMapDisplay.FollowCameraOperatorConfig.combinedInstructionMaxZoomChange.

Deprecations

  • Deprecated TomTomSDKMapDisplay.CameraTrackingMode.follow(:). Use the TomTomSDKMapDisplay.CameraTrackingMode.followNorthUp(:) instead.
  • Deprecated TomTomSDKMapDisplay.CameraTrackingMode.follow. Use the TomTomSDKMapDisplay.CameraTrackingMode.followNorthUp(_:) instead.
  • Deprecated TomTomSDKMapDisplay.CameraTrackingMode.followDirection. Use the TomTomSDKMapDisplay.CameraTrackingMode.followDirection(_:) instead.
  • Deprecated TomTomSDKMapDisplay.CameraTrackingMode.followRoute(:). Use the TomTomSDKMapDisplay.CameraTrackingMode.followRouteDirection(:) instead.
  • Deprecated TomTomSDKMapDisplay.CameraTrackingMode.followRoute. Use the TomTomSDKMapDisplay.CameraTrackingMode.followRouteDirection(_:) instead.
  • Deprecated TomTomSDKMapDisplay.Polygon.bounds.
  • Deprecated TomTomSDKMapDisplay.Polygon.strokeColor, replacing it with TomTomSDKMapDisplay.Polygon.outlineColor.
  • Deprecated TomTomSDKMapDisplay.TextureOptions.isOverlayImage, replacing it with TomTomSDKMapDisplay.TextureOptions.isImageOverlay.

New features

  • Introduced GeoJSON polygon support in RangeVisualization.
  • Provided a version of the MapMatchingEngine that supports the UnifiedDataAccess factory exposed by the UnifiedMapDataStoreAccessProvider.

Updates

  • TomTomSDKMapDisplay.CameraTrackingMode is now available in General Availability.
  • TomTomSDKMapDisplay.FollowCameraOperatorConfig.RoadClass is now available in General Availability.
  • TomTomSDKMapDisplay.FollowCameraOperatorConfig is now available in General Availability.
  • Added full-fledged documentation for TomTomSDKMapDisplay.FollowCameraOperatorConfig.defaultFieldOfView.
  • Documentation was updated before deprecating several CameraTrackingMode operators.
  • Improved documentation for TomTomSDKMapDisplay.LocationIndicator and moved out magic numbers to Constants.
  • Replaced all usage of TomTomSDKMapDisplay.CameraTrackingMode.follow with TomTomSDKMapDisplay.CameraTrackingMode.followNorthUp(_:).
  • Replaced all usage of TomTomSDKMapDisplay.CameraTrackingMode.followDirection with TomTomSDKMapDisplay.CameraTrackingMode.followDirection(_:).
  • Replaced all usage of TomTomSDKMapDisplay.CameraTrackingMode.followRoute with TomTomSDKMapDisplay.CameraTrackingMode.followRouteDirection(_:).
  • Struct TomTomSDKMapDisplay.PolygonOptions is now available in General Availability.
  • Struct TomTomSDKMapDisplay.TextureOptions is now available in General Availability.

Breaking changes

  • NDSStoreUpdater.findRegionsAlongPolyline now throws MapUpdateError.InvalidLocation if the provided polyline contains any invalid location. To adapt to the changes, use a do-catch block.
  • NDSStoreUpdater.findRegionsAroundPosition now throws MapUpdateError.InvalidLocation if the provided position is invalid. To adapt to the changes, use a do-catch block.
  • TomTomSDKDataManagement.WriteAccessStatus is no longer available in the public API.
  • TomTomSDKDataManagementOffline.NDSMapUpdater.ndsMapAccessSync type was changed from TomTomSDKDataManagement.MapDataStoreAccessSyncing to TomTomSDKDataManagementOffline.NDSStoreAccessSync.
  • TomTomSDKDataManagementOffline.NDSStore.init(configuration:sync:) is now changed to TomTomSDKDataManagementOffline.NDSStore.init(configuration:).
  • TomTomSDKDataManagementOffline.NDSStoreAccessSync.init() is no longer available as a public API. NavSDK clients shouldn't create a TomTomSDKDataManagementOffline.NDSStoreAccessSync instance directly.
  • TomTomSDKDataManagementOffline.NDSStoreAccessSync.releaseWriteAccess(observer:) is no longer available as a public API.
  • TomTomSDKDataManagementOffline.NDSStoreAccessSync.requestWriteAccess(observer:timeout:) is no longer available as a public API.
  • TomTomSDKDataManagementOffline.NDSStoreAccessSync.SyncError.InvalidObserverError was changed to TomTomSDKDataManagementOffline.NDSStoreAccessSync.SyncError.InvalidObserver.
  • TomTomSDKNDSStoreUpdater.NDSStoreUpdater.ndsMapAccessSync type was changed from TomTomSDKDataManagement.MapDataStoreAccessSyncing to TomTomSDKDataManagementOffline.NDSStoreAccessSync.
  • Add typealias HazardId.
  • Added the property TomTomSDKNavigationEngines.RouteProgress.remainingTrafficDelay.
  • Changed TomTomSDKDataManagementOffline.NDSStoreAccessSync.addObserver(:) to be non-throwing.
  • Created enum HazardsFailure that describes the error occurring during the subscription request processing.
  • Created enum OnlineHazardsFactory to create a Hazards instance (create method).
  • Created interface Hazards to obtain hazard data (subscribe/unsubscribe/provide methods).
  • Created interface to listeners for hazard updates HazardsUpdateListener (onDataUpdated/onFailure methods).
  • Made the class HazardsProvider internal.
  • Refine interface HazardType.
  • Refined struct HazardsOptions and make it conform to Equatable.
  • Refined the struct Hazard, and make it conform to Equatable and Hashable.
  • Removed NavigationRouteObserver.didReplanRoute(replannedRoute:, reason:).
  • Removed TomTomSDKDataManagementOffline.NDSStoreAccessSync.SyncError.
  • Removed TomTomSDKNavigation.NavigationRouteObserver. didReplanRouteOnLanguageChange(replannedRoute:, reason:, locale:).
  • Removed TomTomSDKNavigationEngines.SafetyLocationElement.blackSpot.
  • Removed the TomTomSDKDataManagement.MapDataStoreAccessSyncing protocol.
  • Removed the TomTomSDKNavigationEngines.RouteProgress.extras property.
  • Removed the property TomTomSDKNavigationEngines.RouteProgress.currentGeoLocation; use the property TomTomSDKNavigationEngines.RouteProgress.remainingRouteStopsProgress.last.remainingDistance to calculate the distance to destination.
  • Renamed HazardsDataProvider interface to HazardsMqttDataProvider, made the interface HazardsMqttDataProvider internal, and use the public interface Hazards instead of HazardsMqttDataProvider.
  • Renamed the TomTomSDKNavigationEngines.RouteProgress.arrivalTime property to TomTomSDKNavigationEngines.RouteProgress.remainingTime.
  • Use the TomTomSDKDataManagementOffline.NDSStoreAccessSync class instead of the TomTomSDKDataManagement.MapDataStoreAccessSyncing protocol.

New features

  • Added forkPoints to Route.

Fixes

  • Fixed calculation of the VehicleHorizonPathPosition offset.
  • Fixed data race issue in SafetyLocationTileCache.
  • Now returning the correct safety locations within the bounding box.
  • Now using the correct unit for speed limits.
  • The NavigationEngines.RouteProgress.remainingRouteStopsProgress now contains only route stops whose offset is smaller than the distance along the route.

Updates

  • TomTomSDKDataManagementOffline.NDSStoreAccessSync is now available in General Availability.
  • TomTomSDKNavigationEngines.LocationSnapshot is now available in General Availability.
  • TomTomSDKVehicle.CombustionEngineProperty is now available in General Availability.
  • TomTomSDKVehicle.ElectricEngineProperty is now available in General Availability.
  • TomTomSDKVehicle.PropertyID is now available in General Availability.
  • TomTomSDKVehicle.VehicleProperty is now available in General Availability.

Routing

Breaking changes

  • Deprecated TomTomSDKRoute.TollRoadSection. Use TollSection instead.
  • Moved TomTomSDKRoutePlanner.Budget to TomTomSDKRangeCalculator.Budget. (#7847)(GOSDK-21589) Replace usages of the TomTomSDKRoutePlanner.Budget class with TomTomSDKRangeCalculator.Budget class.
  • Moved TomTomSDKRoutePlanner.RangeBoundary to TomTomSDKRangeCalculatorr.RangeBoundary. (#7847)(GOSDK-21589) Replace usages of the TomTomSDKRoutePlanner.RangeBoundary class with the TomTomSDKRangeCalculator.RangeBoundary class.
  • Moved TomTomSDKRoutePlanner.RangeCalculationOptions to TomTomSDKRangeCalculator.RangeCalculationOptions. (#7847)(GOSDK-21589) Replace usages of the TomTomSDKRoutePlanner.RangeCalculationOptions class with the TomTomSDKRangeCalculator.RangeCalculationOptions class.
  • Moved TomTomSDKRoutePlanner.RangeCalculator to TomTomSDKRangeCalculator.RangeCalculator. (#7847)(GOSDK-21589) Replace usages of the TomTomSDKRoutePlanner.RangeCalculator class with the TomTomSDKRangeCalculator.RangeCalculator class.
  • TomTomSDKRoutePlanner.Range is moved to TomTomSDKRangeCalculator.Range. (#7847)(GOSDK-21589) Replace usages of the TomTomSDKRoutePlanner.Range class with TomTomSDKRangeCalculator.Range class.

Deprecations

  • Deprecated the TomTomSDKRoute.DrivingSide struct. Use the TomTomSDKCommon.DrivingSide struct instead.
  • Deprecated the TomTomSDKRoute.RoadShield struct. Use the TomTomSDKCommon.RoadShield struct instead.

Fixes

  • Multiple EV-route replanning bug fixed.
  • The SpeedLimit section should only be requested only for motorized vehicles.

Updates

  • Promoted ChargingOptions and ChargingStopsStrategy to General Availability.

Fixes

  • Fixed crash in binding of onboard search with Custom POI.
  • Fixed crash on Cancel call for SearchOffline in Bindings.