v11.23.0
11.23.0 April 29, 2026
Features β¨ and improvements π
- Support symbol paint properties in appearances β symbol layers can now use feature-dependent appearances for paint properties (not only layout), enabling richer per-feature styling of text and icons.
- Improve rendering performance of feature cutouts β optimized depth sampling in the cutout shader yields noticeably smoother rendering when feature cutouts are enabled (e.g. elevated route with cutouts).
- TileStore can now store 3D landmark/navigation tile content types, unblocking their use in offline regions.
- Add support for USB import radius in TileStore β new import parameter for seeding offline tile packs from USB media within a configurable radius.
- Evict tiles based on LRU and optimize eviction β the default eviction policy now uses least-recently-used instead of expiration-based scoring, keeping frequently-viewed tiles around longer and making cleanup passes faster.
- Settings can be set on startup β the SDK now loads
persistent_settings.jsonandnon_persistent_settings.jsonfrom the app's internal storage directory at startup, allowing configuration changes without an app rebuild.
Bug fixes π
- Fix attribution links accepting non-HTTP URI schemes.
- Fix a potential file descriptor leak that could cause resource exhaustion.
- Fix icons appearing at incorrect size when
icon-sizeis data-driven and a non-default scale factor is applied. - Fix fog incorrectly obscuring the globe when using a custom field of view.
- Fix tile data corruption causing integrity check failures for small tiles stored in the offline cache.
- Fix a crash that could occur when the tile store is destroyed while downloads are still being processed.
- Fix 3D models occasionally not rendering on first load on some devices, caused by background shader compilation not signaling the renderer when compilation completed.
- Fix a crash in
ConfigExpressionwhere dereferencing an empty optional caused undefined behaviour. - [compose] Fixed Composition leak in ViewAnnotation when annotations are removed from the map.
- [gestures] Fixed interaction leak in
setGesturesManagercausing native map interactions to accumulate. - [gestures] Added post-cleanup guard to prevent re-registering interactions or listeners after plugin cleanup.
Dependencies
Fetched May 1, 2026
