Skip to content

v11.6.0-beta.1

Pre-release
Pre-release
Compare
Choose a tag to compare
@mapbox-github-ci-writer-public-1 mapbox-github-ci-writer-public-1 released this 22 Jul 17:27
· 59 commits to main since this release

Changes

⚠️⚠️⚠️ Known Issues ⚠️⚠️⚠️

  • ClipLayer property clipLayerTypes is not updated in runtime. The fix is expected to land in 11.6.0-rc.1.

Features ✨ and improvements 🏁

  • SwiftUI API is now marked as stable and recommended for production use 🎉
    • You no longer need to append import MapboxMaps with @_spi(Experimental) to use the SwiftUI implementation
    • Check out our SwiftUI User Guide for documentation on working with SwiftUI.
  • Expose experimental ClipLayer to remove 3D data (fill extrusions, landmarks, trees) and symbols.
  • CustomRasterSource API updated, now CustomRasterSourceOptions accepts protocol CustomRasterSourceClient, enabling direct rendering into CustomRasterSource tiles. To achieve behavior similar to previous releases one may construct instance of CustomRasterSourceClient as shown below:
CustomRasterSourceOptions(tileStatusChangedFunction: { tileID, status in }) // Before
CustomRasterSourceOptions(clientCallback: CustomRasterSourceClient.fromCustomRasterSourceTileStatusChangedCallback { tileID, status in }) // Now
  • Introduce new ViewAnnotation.allowZElevate and MapViewAnnotation.allowZElevate properties. When set to true, the annotation will be positioned on the rooftops of buildings, including both fill extrusions and models.
  • Deprecate MapView.presentsWithTransaction and Map.presentsWithTransaction in favor of MapView.presentationTransactionMode and Map.presentationTransactionMode. The new default PresentationTransactionMode.automatic updates the presentsWithTransaction automatically when need to optimize performance. If you used the MapView.presentsWithTransaction with View Annotations, now you can safely remove this option:
Map {
  MapViewAnnotation(...)
}
.presentsWithTransaction(true) // Remove this

In case you need to preserve the old default behavior use presentationTransactionMode = .async:

mapView.presentationTransactionMode = .async // UIKit
Map().presentationTransactionMode(.async) // SwiftUI
  • MapboxMaps XCFramework structure now properly constructed for maccatalyst platform and code signing issues was eliminated.

Bug fixes 🐞

  • Improved line-pattern precision
  • Fixed CustomRasterSource rendering when camera shows anti-meridian or multiple world copies.

Dependencies

  • Update MapboxCommon to 24.6.0-beta.1.
  • Update MapboxCoreMaps to 11.6.0-beta.1:
Changelog

Features ✨ and improvements 🏁

  • Introduce clip layer to remove 3d data
  • Enable direct rendering into Custom Raster source tiles
  • Clip layer feature parity with gl-js
  • Add applyTransformFast function to aabb which calculates faster bounds for simple transforms.
  • Introduce a new 'allowZElevate' option in DynamicViewAnnotationOptions. When set to true, the annotation will be positioned on the rooftops of buildings, including both fill extrusions and models.

Bug fixes 🐞

  • Improved line-pattern precision
  • Custom raster source fixes when camera shows antimeridian or multiple world copies

Dependency requirements:

  • Compatible version of Xcode: 15.2.0