Skip to content
This repository has been archived by the owner on Jun 21, 2023. It is now read-only.

Releases: mapbox/mapbox-gl-native-ios

ios-v5.8.0-beta.1

18 Mar 00:44
Compare
Choose a tag to compare
ios-v5.8.0-beta.1 Pre-release
Pre-release

Changes since Mapbox Maps SDK for iOS v5.8.0-alpha.1:

Styles and rendering

  • The IN and CONTAINS predicate operators can now test whether a string is a substring of another string or whether the evaluated feature (SELF) lies within a given MGLShape or MGLFeature. (#183, #184)
  • The MGLSymbolStyleLayer.iconTextFit property now respects the cap insets of any nine-part stretchable image passed into the -[MGLStyle setImage:forName:] method. You can define the stretchable area in Xcode’s asset catalog or by calling the -[UIImage resizableImageWithCapInsets:] method. (#182)

Snapshots

  • You no longer need to explicitly capture the MGLMapSnapshotter object in the completion handler that you specify in -[MGLMapSnapshotter startWithCompletionHandler:]. Even if you declare the snapshotter locally without holding a strong reference to it, the snapshotter is only deallocated after the completion handler finishes, and the completion handler generally receives a valid snapshot. (#210)
  • The -[MGLMapSnapshotter cancel] method no longer calls the completion handler passed into -[MGLMapSnapshotter startWithCompletionHandler:]. (#210)
  • Fixed an issue where the MGLMapSnapshotter.loading property always returned NO, even while loading a snapshot. (#210)

Other changes

  • Added the MGLMapView.minimumPitch and MGLMapView.maximumPitch properties to further limit how much the user or your code can tilt the map. (#208)
  • Downloaded offline packs no longer reduce the storage space available for ambient caching of tiles and other resources. (mapbox/mapbox-gl-native#15622)
  • Added the -[MGLOfflineStorage preloadData:forURL:modificationDate:expirationDate:eTag:mustRevalidate:completionHandler:] method for determining when the data is ready to retrieve from the cache. (#188)
  • Improved performance when continuously animating a tilted map. (mapbox/mapbox-gl-native#16287)

To install this pre-release via a dependency manager, see our CocoaPods or Carthage instructions.

Documentation is available online or as part of the download.

macos-v0.15.0-alpha.1

10 Mar 08:45
Compare
Choose a tag to compare
macos-v0.15.0-alpha.1 Pre-release
Pre-release

This version of the Mapbox Maps SDK for macOS corresponds to version 5.8.0-alpha.1 of the Mapbox Maps SDK for iOS. Changes since macos-v0.14.0:

Styles and rendering

  • Added the -[MGLMapViewDelegate mapView:shouldRemoveStyleImage:] method for optimizing style image caching. (mapbox/mapbox-gl-native#14769)
  • Added the image expression function for converting an image name into a style image. Use this function in expressions in style JSON or with the MGL_FUNCTION() syntax in an NSExpression format string. Image expressions are compatible with the mgl_attributed: expression function and MGLAttributedExpression classes for embedding icons inline in text labels. (mapbox/mapbox-gl-native#15877, mapbox/mapbox-gl-native#15937)
  • Added the in expression function for testing whether a value is included in an array expression or whether a string is a substring of another string. Use this function in expressions in style JSON or with the MGL_FUNCTION() syntax in an NSExpression format string. (mapbox/mapbox-gl-native#16162)
  • Added the within expression function for testing whether the evaluated feature lies within the given GeoJSON object. Use this function in expressions in style JSON or with the MGL_FUNCTION() syntax in an NSExpression format string. (mapbox/mapbox-gl-native#16157, mapbox/mapbox-gl-native#16194, mapbox/mapbox-gl-native#16220)
  • Added the MGLSymbolStyleLayer.textWritingModes layout property. This property can be set to MGLTextWritingModeHorizontal or MGLTextWritingModeVertical. (mapbox/mapbox-gl-native#14932)
  • Added the MGLLineStyleLayer.lineSortKey and MGLFillStyleLayer.fillSortKey properties. (#179)
  • The MGLIdeographicFontFamilyName Info.plist key now also accepts an array of font family names, to customize font fallback behavior. It can also be set to a Boolean value of NO to force the SDK to typeset CJK characters in a remote font specified by MGLSymbolStyleLayer.textFontNames. (mapbox/mapbox-gl-native#14862)
  • The -[MGLStyle localizeLabelsIntoLocale:] and -[NSExpression mgl_expressionLocalizedIntoLocale:] methods can now localize text into Traditional Chinese and Vietnamese. (#173)
  • Fixed crashes triggered when MGLSource and MGLStyleLayer objects are accessed after having been invalidated after a style change. (mapbox/mapbox-gl-native#15539)
  • Fixed an issue where fill extrusion layers would be incorrectly rendered above other layers. (mapbox/mapbox-gl-native#15065)
  • Fixed rendering and collision detection issues with using MGLSymbolStyleLayer.textVariableAnchor and MGLSymbolStyleLayer.iconTextFit properties on the same layer. (mapbox/mapbox-gl-native#15367)
  • Fixed symbol overlap when zooming out quickly. (mapbox/mapbox-gl-native#15416)
  • Fixed an issue where non-template images would draw as template images when used in the same style layer. (mapbox/mapbox-gl-native#15456)
  • Fixed an issue where the collision boxes for symbols would not be updated when MGLSymbolStyleLayer.textTranslation or MGLSymbolStyleLayer.iconTranslation were used. (mapbox/mapbox-gl-native#15467)
  • Fixed an issue that caused MGLTileSourceOptionMaximumZoomLevel to be ignored when setting MGLTileSource.configurationURL. (mapbox/mapbox-gl-native#15581)
  • Fixed an issue where MGLSymbolStyleLayer.symbolSortKey could sort text and icons incorrectly. (mapbox/mapbox-gl-native#16023)
  • Fixed an issue where style layers backed by a shape source could flicker when transitioning between styles. (mapbox/mapbox-gl-native#15907, mapbox/mapbox-gl-native#15941)
  • Improved the performance of loading a style that has many style images. (mapbox/mapbox-gl-native#16187)
  • Updated “map ID” to the more accurate term “tileset ID” in documentation; updated “style's Map ID” to the more accurate term “style URL”. (mapbox/mapbox-gl-native#15116)

Camera

  • Setting MGLMapView.contentInset now moves the map’s focal point to the center of the content frame after insetting. (mapbox/mapbox-gl-native#14664)
  • The -[MGLMapView setCamera:withDuration:animationTimingFunction:edgePadding:completionHandler:] method now adds the current value of the MGLMapView.contentInsets property to the edgePadding parameter. (mapbox/mapbox-gl-native#14813)
  • Added variants of multiple animated MGLMapView methods that accept completion handlers (mapbox/mapbox-gl-native#14381):
    • -[MGLMapView setVisibleCoordinateBounds:edgePadding:animated:completionHandler:]
    • -[MGLMapView setContentInsets:animated:completionHandler:]
    • -[MGLMapView showAnnotations:edgePadding:animated:completionHandler:]
  • Fixed an issue where it was possible to set the map’s content insets then tilt the map enough to see the horizon, causing performance issues. (mapbox/mapbox-gl-native#15195)
  • Fixed an issue where animated camera transitions zoomed in or out too dramatically. (mapbox/mapbox-gl-native#15281)

Feature querying

  • Fixed an issue where -[MGLMapView visibleFeaturesInRect:] and -[MGLShapeSource featuresMatchingPredicate:] omitted some features from the return value. (mapbox/mapbox-gl-native#14884)
  • Fixed an issue where -[MGLMapView visibleFeaturesInRect:] and -[MGLShapeSource featuresMatchingPredicate:] could return incorrect coordinates at zoom levels 20 and higher. (mapbox/mapbox-gl-native#15560)
  • Improved feature querying performance. (mapbox/mapbox-gl-native#14930)

Networking and storage

Other changes

  • Added an -[MGLMapSnapshotter startWithOverlayHandler:completionHandler:] method to provide the snapshot's current CGContext in order to perform custom drawing on MGLMapSnapshot objects. (mapbox/mapbox-gl-native#15530)
  • Fixed a memory leak when zooming with any options enabled in the MGLMapView.debugMask property. (mapbox/mapbox-gl-native#15395)
  • MGLLoggingLevel has been updated to better match core log levels. You can now use MGLLoggingConfiguration.loggingLevel to filter logs from core. (mapbox/mapbox-gl-native#15120)

To install this prerelease via CocoaPods, point your Podfile to either of these URLs:

Documentation is available online or as part of the download.

ios-v5.8.0-alpha.1

10 Mar 07:15
Compare
Choose a tag to compare
ios-v5.8.0-alpha.1 Pre-release
Pre-release

Changes since Mapbox Maps SDK for iOS v5.7.0:

Styles and rendering

  • Added the in expression function for testing whether a value is included in an array expression or whether a string is a substring of another string. Use this function in expressions in style JSON or with the MGL_FUNCTION() syntax in an NSExpression format string. (#16162)
  • Added the within expression function for testing whether the evaluated feature lies within the given GeoJSON object. Use this function in expressions in style JSON or with the MGL_FUNCTION() syntax in an NSExpression format string. (#16157)
  • Added the MGLLineStyleLayer.lineSortKey and MGLFillStyleLayer.fillSortKey properties. (#179, #16194, #16220)
  • The -[MGLStyle localizeLabelsIntoLocale:] and -[NSExpression mgl_expressionLocalizedIntoLocale:] methods can now localize text into Traditional Chinese and Vietnamese. (#173)
  • Fixed an issue where an MGLLineStyleLayer.lineDashPattern value of {1, 0} resulted in hairline gaps. (#16202)
  • Improved the performance of loading a style that has many style images. (#16187)

Other changes

  • Fixed issues where an offline pack would stop downloading before completion. (#16230, #16240)
  • When an offline pack encounters an HTTP 404 error, the MGLOfflinePackUserInfoKeyError user info key of the MGLOfflinePackErrorNotification now indicates the resource that could not be downloaded. (#16240)
  • Fixed a memory leak when zooming with any options enabled in the MGLMapView.debugMask property. (#15179)

To install this pre-release via a dependency manager, see our CocoaPods or Carthage instructions.

Documentation is available online or as part of the download.

ios-v5.5.1

21 Feb 07:15
Compare
Choose a tag to compare

Changes since Mapbox Maps SDK for iOS v5.5.0:

Documentation is available online or as part of the download.

ios-v5.7.0

14 Feb 20:14
7d4c38f
Compare
Choose a tag to compare

Changes since Mapbox Maps SDK for iOS v5.6.1:

Bug fixes

  • Fixed an issue where symbolSortKey could sort text and icons incorrectly. (#16023)
  • Fixed a crash when parsing GeoJSON sources. (#16106)

Other changes

  • Added new property MGLMapView.panScrollingMode, which allows you to limit the horizontal or vertical direction a user may pan on the map view. (#108)

Documentation is available online or as part of the download.

ios-v5.7.0-beta.1

23 Jan 22:00
88e281b
Compare
Choose a tag to compare
ios-v5.7.0-beta.1 Pre-release
Pre-release

Changes since Mapbox Maps SDK for iOS v5.7.0-alpha.1:

Other changes

  • Fixed a crash when parsing GeoJSON sources. (#16106)

To install this pre-release via a dependency manager, see our CocoaPods or Carthage instructions.

Documentation is available online or as part of the download.

ios-v5.7.0-alpha.1

10 Jan 22:54
87ada1e
Compare
Choose a tag to compare
ios-v5.7.0-alpha.1 Pre-release
Pre-release

Changes since Mapbox Maps SDK for iOS v5.6.1:

Other changes

  • Added new property MGLMapView.panScrollingMode, which allows you to limit the horizontal or vertical direction a user may pan on the map view. (#108)

To install this pre-release via a dependency manager, see our CocoaPods or Carthage instructions.

Documentation is available online or as part of the download.

ios-v5.6.1

10 Jan 00:38
2f3ec82
Compare
Choose a tag to compare

Changes since Mapbox Maps SDK for iOS v5.6.0:

  • Fixed a crash that could occur when MGLShapeSource destroys its underlying data. (#16106)

Documentation is available online or as part of the download.

ios-v5.6.0

20 Dec 16:11
418bf5d
Compare
Choose a tag to compare

Changes since Mapbox Maps SDK for iOS v5.5.0:

This release includes a known issue where the binary size has increased. #63

Packaging

  • Integrates MapboxMobileEvents as a dependency (#60). As a result, the following installation processes have changed:
    • CocoaPods: You now must include use frameworks! in your Podfile.
    • Carthage: Specify github "mapbox/mapbox-events-ios" == 0.10.2 in your Cartfile. Additionally, please note that if you are using --no-use-binaries, the MapboxMobileEvents.framework will still be installed as a dynamic framework.
    • Manual installation: New Github release artifact (mapbox-ios-sdk-5.6.0-dynamic-with-events.zip) contains the MapboxMobileEvents.framework; please install this along with Mapbox.framework

Networking and storage

  • Make network requests for expired resources lower priority than requests for new resources. (#15950)

Bug fixes

  • Fixed the rendering bug caused by redundant pending requests for already requested images #15864
  • Enable incremental vacuum for the offline database in order to make data removal requests faster and to avoid the excessive disk space usage (creating a backup file on VACUUM call). (#15837)
  • Fix ornaments' view constraints bug when devices change to bold-text mode. (#57)
  • Fixed MGLShapeSource source flickering on style transition. (#15907)
  • Fixed flickering caused by unnecessary removing and re-adding of the render sources when the order of their corresponding style objects was changed in the updated style (#15941)
  • Fixed a crash when MGLSymbolStyleLayer.textFontSize is set to an expression that evaluates to 0. (#16080)

Other changes

  • Convert GeoJSON features to tiles for the loaded source description in a background thread and thus unblock the UI thread (#15885)

Documentation is available online or as part of the download.

ios-v5.6.0-beta.1

14 Dec 02:54
4b7eb8b
Compare
Choose a tag to compare
ios-v5.6.0-beta.1 Pre-release
Pre-release

Changes since Mapbox Maps SDK for iOS v5.6.0-alpha.2:

  • No public-facing changes in v5.6.0-beta.1.

Packaging

  • Integrates MapboxMobileEvents as a dependency (#60). As a result, the following installation processes have changed:
    • CocoaPods: You now must include use frameworks! in your Podfile.
    • Carthage: Specify github "mapbox/mapbox-events-ios" == 0.10.2 in your Cartfile. Additionally, please note that if you are using --no-use-binaries, the MapboxMobileEvents.framework will still be installed as a dynamic framework.
    • Manual installation: New Github release artifact (mapbox-ios-sdk-5.6.0-beta.1-dynamic-with-events.zip) contains the MapboxMobileEvents.framework; please install this along with Mapbox.framework

To install this pre-release via a dependency manager, see our CocoaPods or Carthage instructions.

Documentation is available online or as part of the download.