Releases: maplibre/maplibre-compose
Releases · maplibre/maplibre-compose
v0.12.1
v0.12.0
Breaking changes
- @sargunv Upgraded to the latest version of Spatial-K, which significantly overhauls the GeoJson API. See the release notes for details.
- NOTE: Spatial-K now supports any Serializable type for feature properties, but MapLibre Compose currently only supports JsonObject or other non-generic Serializable classes. This will be improved in the future.
- @sargunv Fixed the incorrect name of
rememberComputedSource(wasrememberGeoJsonSource) - @sargunv Fixed the
lineProgress()expression signature (it does not have parameters)` - Updated Kotlin and Compose versions
Features
- @kodebach Added a location engine and location puck on Android and iOS
- @kodebach Added a new module, maplibre-compose-gms, to support Google location services on Android
- @jgillich Added RasterDemSource to support HillshadeLayer on Android and iOS
- @sargunv Added support for stretchable images in the layer styling DSL on Android and iOS
- @sargunv Added support for configuring gestures on desktop
- @sargunv Added support for detecting map clicks on desktop
- @sargunv Added support for manipulating the camera position on desktop
- @sargunv Added support for reading the camera state on desktop (except
isCameraMoving) - @sargunv Added support for projecting between screen / world positions on desktop
- @sargunv Added support for render stats on desktop
- @tronto20 Added partial support for Compose resource URIs on desktop
- @kodebach Added some additional preset gesture options: PositionLocked, RotationLocked, and ZoomOnly
- @sargunv Added a placeholder (grey box) for the map in
@Previewmode (instead of crashing)
Fixes
- @sargunv Fixed the
switchexpression not working when zero cases were provided - @sargunv Fixed the map not being disposed properly on desktop
- @sargunv Fixed the map persisting after being removed on macOS
- @sargunv Fixed the map desyncing from its correct position when resizing the window vertically on macOS
Documentation
- @louwers Added a logo to the readme
- @sargunv Added a new roadmap page to the documentation site
- @sargunv Fixed API reference not available for the main module
- @sargunv Corrected desktop setup instructions on the getting started guide
- @DestBro Clarified iOS setup instructions on the getting started guide
- @kodebach Added location engine demos to the demo app
- @sargunv Added some other demos to the demo app
v0.11.1
v0.11.0
NOTE: This release has widespread breaking changes from v0.10. Read the change log carefully.
New maven coordinates and desktop setup instructions can be found in the getting started documentation.
Breaking changes
- Maven coordinates have been changed, replacing
dev.sargunv.maplibre-composewithorg.maplibre.compose. - To match, package names have been changed from
dev.sargunv.…toorg.maplibre.…and the package organization has changed significantly.- I recommend removing all
dev.sargunv.…imports and using an IDE to help you find the new imports.
- I recommend removing all
- The desktop implementation has been rewritten, eliminating the old MapLibre-JS-in-webview based implementation with MapLibre Native.
- If you use the desktop target, you'll need to remove the KCEF setup from your build and add the natives for your platform(s).
- Supported functionality on desktop is still quite minimal. Future releases will build on this.
- Linux support is implemented, but doesn't quite work yet. See #564.
Other changes
- Updated many libraries, notably MapLibre Android to v11.13.
- Did not update MapLibre iOS to v6.18 because of #551
- Fixed a crash when using zoom interpolation with
textSize.
Full Changelog: v0.10.4...v0.11.0
v0.10.4
v0.10.3
v0.10.2
What's Changed
- ios: fix unnecessary reinitialization of map due to recomposition by @sargunv in #507
- implement clusterMinPoints on Android and iOS by @westnordost in #511
Full Changelog: v0.10.1...v0.10.2
v0.10.1
v0.10.0
Breaking changes
- Support raw json base styles by @sargunv in #462
MapLibreMap(styleUri = "..")is nowMapLibreMap(baseUrl = BaseStyle.Uri(".."))
- Auto assign source IDs to fix a common crash by @sargunv in #497
- all the
remember*Source()functions no longer take anidparameter.
- all the
- Correct iconPadding type: It is a DpPaddingValue by @westnordost in #471
Other changes
- Added ImageSource by @andreas-umbricht in #457
- Added ComputedSource by @sargunv in #456
- Exposed finished and failed map loading callbacks by @andreas-umbricht in #470
- Added camera bounding box by @andreas-umbricht in #469
- Filled out some gaps in the expressions DSL:
- Added translation of "map attribution" to 19 languages, most from Europe by @westnordost in #493
- Bumped many dependency versions
Documentation changes
- Expression function cheatsheet by @westnordost in #450
- Update CONTRIBUTING.md by @sargunv in #444
- Partial overhaul of the demo app
- extend docs for anchors by @westnordost in #445
New Contributors
- @andreas-umbricht made their first contribution in #457
- @louwers made their first contribution in #490
Full Changelog: v0.9.1...v0.10.0