Skip to content

Commit 0ab6285

Browse files
jamesarichCopilotgarthvh
authored
fix(desktop): unbreak release builds (CMP beta03 + pwsh -P quoting) (#5230)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: garthvh <1795163+garthvh@users.noreply.github.com>
1 parent f091b6b commit 0ab6285

5 files changed

Lines changed: 22 additions & 16 deletions

File tree

.github/workflows/release.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -285,7 +285,10 @@ jobs:
285285
env:
286286
ORG_GRADLE_PROJECT_appVersionName: ${{ needs.prepare-build-info.outputs.APP_VERSION_NAME }}
287287
APPIMAGE_EXTRACT_AND_RUN: 1
288-
run: ./gradlew :desktop:packageReleaseDistributionForCurrentOS -PaboutLibraries.release=true --no-daemon
288+
# Quote the -P flag: PowerShell on Windows interprets the dot in
289+
# `-PaboutLibraries.release=true` as member access on `-PaboutLibraries`,
290+
# splitting the token and feeding `.release=true` to Gradle as a task name.
291+
run: ./gradlew :desktop:packageReleaseDistributionForCurrentOS '-PaboutLibraries.release=true' --no-daemon
289292

290293
- name: List Desktop Binaries
291294
if: runner.os == 'Linux'

app/src/test/kotlin/org/meshtastic/app/ui/NavigationAssemblyTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
package org.meshtastic.app.ui
1818

1919
import androidx.compose.ui.test.ExperimentalTestApi
20-
import androidx.compose.ui.test.runComposeUiTest
20+
import androidx.compose.ui.test.v2.runComposeUiTest
2121
import androidx.navigation3.runtime.NavKey
2222
import androidx.navigation3.runtime.entryProvider
2323
import androidx.navigation3.runtime.rememberNavBackStack

build-logic/convention/src/main/kotlin/org/meshtastic/buildlogic/AndroidCompose.kt

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,12 @@ internal fun Project.configureAndroidCompose(commonExtension: CommonExtension) {
3232
exclude(mapOf("group" to "androidx.compose", "module" to "compose-bom"))
3333
}
3434

35-
// CMP publishes these core AndroidX groups at the CMP version tag.
36-
// Material, Material3, and Adaptive follow separate AndroidX version numbers
37-
// and must NOT be included here (see CMP release notes for the mapping table).
38-
val cmpVersion = libs.version("compose-multiplatform")
35+
// CMP publishes these core AndroidX groups at an AndroidX version tag that
36+
// tracks (but does not equal) the CMP version. The exact mapping lives in
37+
// the CMP release notes; we mirror it via the `androidx-compose-bom-aligned`
38+
// version ref in libs.versions.toml. Material, Material3, and Adaptive follow
39+
// separate AndroidX version numbers and must NOT be included here.
40+
val androidxComposeVersion = libs.version("androidx-compose-bom-aligned")
3941
val cmpAlignedGroups = setOf(
4042
"androidx.compose.animation",
4143
"androidx.compose.foundation",
@@ -51,7 +53,7 @@ internal fun Project.configureAndroidCompose(commonExtension: CommonExtension) {
5153
configurations.configureEach {
5254
resolutionStrategy.eachDependency {
5355
if (requested.group in cmpAlignedGroups) {
54-
useVersion(cmpVersion)
56+
useVersion(androidxComposeVersion)
5557
} else if (requested.group == "androidx.compose.material") {
5658
useVersion(materialVersion)
5759
}

core/barcode/src/test/kotlin/org/meshtastic/core/barcode/BarcodeScannerTest.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
package org.meshtastic.core.barcode
1818

1919
import androidx.compose.ui.test.ExperimentalTestApi
20-
import androidx.compose.ui.test.runComposeUiTest
20+
import androidx.compose.ui.test.v2.runComposeUiTest
2121
import org.junit.Test
2222
import org.junit.runner.RunWith
2323
import org.robolectric.RobolectricTestRunner

gradle/libs.versions.toml

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -34,21 +34,22 @@ testRetry = "1.6.4"
3434
turbine = "1.2.1"
3535

3636
# Compose Multiplatform
37-
compose-multiplatform = "1.11.0-beta02"
38-
compose-multiplatform-material3 = "1.11.0-alpha06"
39-
# `androidx-compose-bom-aligned` tracks androidx.compose.{runtime,ui} test/tracing
37+
compose-multiplatform = "1.11.0-beta03"
38+
compose-multiplatform-material3 = "1.11.0-alpha07"
39+
# `androidx-compose-bom-aligned` tracks androidx.compose.{runtime,ui,foundation,animation}
4040
# artifacts that ship in lockstep with CMP. Kept as a separate version ref so Renovate
4141
# can bump androidx releases (which often land first) without dragging the
4242
# `org.jetbrains.compose:*` artifacts and Gradle plugin to a version JetBrains
43-
# hasn't published yet (see PR #5180). Should normally match `compose-multiplatform`;
44-
# AndroidCompose.kt's resolutionStrategy force-aligns these groups to the CMP version
45-
# at resolution time regardless of the declared value here.
46-
androidx-compose-bom-aligned = "1.11.0-rc01"
43+
# hasn't published yet (see PR #5180). Should track the AndroidX version that the
44+
# current `compose-multiplatform` release maps to (see CMP release notes).
45+
# AndroidCompose.kt's resolutionStrategy force-aligns these groups to *this* version
46+
# at resolution time, so it is the source of truth for the Android target.
47+
androidx-compose-bom-aligned = "1.11.0"
4748
# `androidx-compose-material` (M2) is independent of CMP and pinned separately
4849
# because some third-party libs (maps-compose-widgets, datadog) drag in
4950
# unversioned material transitives.
5051
androidx-compose-material = "1.7.8"
51-
jetbrains-adaptive = "1.3.0-alpha06"
52+
jetbrains-adaptive = "1.3.0-alpha07"
5253

5354
# Google
5455
maps-compose = "8.3.0"

0 commit comments

Comments
 (0)