fix(deps): update dependency org.maplibre.compose:maplibre-compose to v0.16.0 - #6581
Open
renovate[bot] wants to merge 1 commit into
Open
fix(deps): update dependency org.maplibre.compose:maplibre-compose to v0.16.0#6581renovate[bot] wants to merge 1 commit into
renovate[bot] wants to merge 1 commit into
Conversation
renovate
Bot
force-pushed
the
renovate/org.maplibre.compose-maplibre-compose-0.x
branch
2 times, most recently
from
August 26, 2026 19:20
56c45e5 to
c9e81b5
Compare
… v0.16.0 Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
renovate
Bot
force-pushed
the
renovate/org.maplibre.compose-maplibre-compose-0.x
branch
from
September 9, 2026 11:43
c9e81b5 to
ee49b01
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.14.0→0.16.0Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
maplibre/maplibre-compose (org.maplibre.compose:maplibre-compose)
v0.16.0v0.16.0 changes the map state, input configuration, styling, and location APIs. It adds map image capture and Android Surface presentation.
This release contains breaking API changes. The upgrade notes below describe the main changes from v0.15.x.
Map state and lifecycle
MapStateholds the camera and style state and provides feature queries and map events. Its lifetime is independent of theMaplibreMapcomposable that displays it. A retained state can be displayed again after that composable leaves composition. One state can be displayed by one presentation at a time.Sources and layers are declared in
rememberMapState's content block. Composable styling functions can be reused across maps and snapshots. When switching base styles, the previous map stays visible while the replacement loads, and declared content is reapplied to the new style.MapRuntimeprovides shared configuration for maps, snapshots, and offline data. Apps can use the default runtime or create and close an explicit runtime for separate configuration or ownership.Input and controls
MapInteractionsconfigures allowed camera movements and callbacks.MapUiOptionsconfigures touch gestures, mouse buttons, scroll and trackpad input, keyboard shortcuts, and rotary input.MapOverlay.Fulladds zoom buttons.MapOverlay.AttributionOnlydisplays the logo and attribution button. Both have Material 3 variants.Android camera animations and style transitions now follow the system animator duration scale. Scale bars on iOS and macOS follow the system measurement preference.
Map images and Android Surface support
MapSnapshotterrenders a base style and declared map content to anImageBitmapon Android, iOS, desktop, and the browser, without displaying an interactive map. Capture requests specify the camera, image size, density, and transparency. Compose UI overlays are not included. See Capture a map image.AndroidMapPresentationdisplays aMapStateon an AndroidSurfacewithout a Compose UI view. Hosts can forward their own pan, scale, fling, and click input. The new Android Auto demo shows this integration. See Present on an Android Surface.Styling and data
mapState.styleprovides typed access to sources, layers, and images, including source and cluster queries and feature-state updates. Mutable views allow edits to resources that are not owned by the declarative content. Handles belong to the loaded style and must be reacquired after a style replacement.mbtilesUrlto load packaged MBTiles files. Browser offline packs remain unsupported.For engine features outside the common API,
withPlatformMapprovides scoped access to the underlying platform map.Location and heading
Location and device heading now use separate
LocationMeasurementandHeadingMeasurementmodels with timestamps and explicit accuracy fields. Heading also identifies its north reference.The revised provider and state APIs distinguish backend availability, permission, and tracking failures. Apps can check availability before requesting permission and retry after tracking fails. The state retains the last measurement when tracking stops. Custom providers can use the default permission behavior when permission does not apply. See Show the user's location.
Fixes and platform updates
armeabi-v7a) in addition to ARM64 and x86-64.The demo adds Wear OS, Android TV, and Android Auto apps, a Material 3 map style, editable markers, and snapshot capture. Chinese and Serbian translations now distinguish writing scripts.
Upgrading from v0.15.x
rememberCameraStateandrememberStyleStatewithrememberMapState. Pass the result asMaplibreMap(state = ...). MoveMaplibreMap'sbaseStyleand map-content block torememberMapState; its trailing block now contains Compose UI overlays.MapOptions: pass rendering settings throughrenderOptions, movetileLodOptionstoRenderOptions.tileLod, and replaceGestureOptionswithMapInteractionsandMapUiOptions. MoveMaplibreMap'szoomRange,pitchRange, andboundingBoxparameters intoCameraConstraints.onMapClickandonMapLongClickintoMapInteractions.callbacks. ReplaceonMapLoadFinished,onMapLoadFailed, andonFramewith collection ofMapState.events. ObservemapState.style.loadStatewhen you need to know whether the base style and composed content are ready. Replace the per-maploggerparameter withMapLogging.logger.mapState.style.sources. For example, cluster queries and feature-state operations previously called onGeoJsonSourcenow belong to itsGeoJsonSourceHandle. Sources passed to layer declarations describe the source data and configuration.LocationwithLocationMeasurement,OrientationwithHeadingMeasurement, andOrientationProviderwithHeadingProvider. The measurement models use separate value and accuracy fields, andmeasuredAt: Instantreplacestimestamp: TimeMark.Anchor.Replacehas been removed. Modify the base-style layer through its mutable handle and useAnchor.AboveorAnchor.Belowto position declared content.Viewport.visibleBoundingBoxwithViewport.visibleBounds. The newVisibleBoundstype represents continuous longitudes, including repeated worlds. CalltoBoundingBox()when a GeoJSON bounding box is required.MapLibre.configurecalls withDefaultMapRuntime.configure(MapRuntimeOptions(...))before the first runtime use. ReplacerememberOfflineManager()with access to the runtime'sofflineManager, for exampleDefaultMapRuntime.instance.offlineManager.MapLibre.initializecalls.The getting started guide and composition guide show the new map setup.
Full changelog: v0.15.0 → v0.16.0
v0.15.0Highlights
Android and iOS moved onto MapLibre Native FFI, the same stack desktop used in 0.14. This release puts Android, iOS, and desktop on one implementation and one public API. The browser target was rewritten against MapLibre GL JS 6.2 and is now at feature parity with the rest. Existing apps must update their setup. See Getting started.
Compose took over the map overlay. Platform SDK ornaments, and the
OrnamentOptionsthat configured them, were removed.This release added location on every platform. The engine was also published as
org.maplibre.compose:locationfor apps that want it without a map. It remains anapidependency ofmaplibre-compose.Breaking changes
Setup changes are listed below. A shared API across JVM, iOS, and Android replaces the per-platform option and state types; see the API reference as not every breaking API change is outlined here..
Android
minSdkto 24.maplibre-compose-runtime-vulkan-androidormaplibre-compose-runtime-opengl-android. The MapLibre Android SDK is no longer a transitive dependency.location-runtime-gmsorlocation-runtime-hms.maplibre-compose-gmsis gone.iOS
MapLibre/MapLibre.frameworkdependency.-lc++,-lz, and the listed frameworks).Web
useEsModules().MapLibre.configure()insideonWasmReady, before Compose starts.Desktop
rememberAwtComposeGpuHosttorememberAwtComposeMapHost.MapLibre.configure()optional. The first map applies a default cache configuration.Added
location-runtime-gmsorlocation-runtime-hmson Android when fused location is wanted.ColorReliefLayer, fill-extrusion rounded corners, and feature-state writes. ReplacedComputedSourcewith custom geometry and vector sources.CameraStateSaveras public API.Improved
suspendso as not to force the caller to block while the renderer answers.Documentation and demo
Dependency updates
Bumped Compose Multiplatform to 1.12.0, Kotlin to 2.4.10, MapLibre GL JS to 6.2, maplibre-native-ffi to 0.202608.3, and Android compileSdk to 37.
New contributors
Full Changelog: maplibre/maplibre-compose@v0.14.0...v0.15.0
Configuration
📅 Schedule: (in timezone Europe/Berlin)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.