mapbox / mapbox/mapbox-maps-android
Crash with Compose 1.10.0 and LazyColumn
Nobody has claimed this yet.
- Dominant language
- Kotlin
- Stars
- 578
- Forks
- 161
- PR merge metrics
- No merged PRs in 30d
Description
## Environment
- Android OS version: 13, 14, 15 , 16
- Devices affected: many
- Maps SDK Version: 11.17.1
## Observed behavior and steps to reproduce
We are using Mapbox Compose, and we noticed that after upgrading to Compose 1.10.0, we encounter an issue when placing the Mapbox component inside a LazyColumn.
```Process: com.decathlon.quechuafinder.debug, PID: 29126
androidx.compose.runtime.ComposePausableCompositionException: Failed to execute op number 139:
99: down LayoutNode@dd6e620 children: 1 measurePolicy: BoxMeasurePolicy(alignment=BiasAlignment(horizontalBias=-1.0, verticalBias=-1.0), propagateMinConstraints=false) deactivated: false
100: down LayoutNode@55f77c6 children: 2 measurePolicy: ColumnMeasurePolicy(verticalArrangement=Arrangement#Top, horizontalAlignment=Horizontal(bias=-1.0)) deactivated: false
101: reuse LayoutNode@55f77c6 children: 2 measurePolicy: ColumnMeasurePolicy(verticalArrangement=Arrangement#Top, horizontalAlignment=Horizontal(bias=-1.0)) deactivated: false
102: apply Function2
103: apply Function2
104: apply androidx.compose.runtime.Updater$$ExternalSyntheticLambda1@834cad7
105: apply Function2
106: down LayoutNode@a5c5e08 children: 0 measurePolicy: androidx.compose.foundation.text.EmptyMeasurePolicy@21d2c3d deactivated: false
107: reuse LayoutNode@a5c5e08 children: 0 measurePolicy: androidx.compose.foundation.text.EmptyMeasurePolicy@21d2c3d deactivated: false
108: apply Function2
109: apply Function2
110: apply androidx.compose.runtime.Updater$$ExternalSyntheticLambda1@d920fc4
111: apply Function2
112: up
113: down LayoutNode@02aa9a1 children: 0 measurePolicy: androidx.compose.foundation.text.EmptyMeasurePolicy@21d2c3d deactivated: false
```
## Notes / preliminary analysis
From what I understand, Compose 1.10.0 has optimized LazyColumn performance, and when it deactivates a node, Mapbox still interacts with the node when it shouldn’t.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the crash with Mapbox Compose inside a LazyColumn using Compose 1.10.0 and Maps SDK 11.17.1 across the reported Android versions. Investigate the interaction between LazyColumn node deactivation and the Mapbox component. Done means the component no longer crashes in this configuration.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, kotlin
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 45/100