Skip to content

Commit 5b94e38

Browse files
authored
Merge KMP patches and setup redirects (#2367)
[CMP-8862](https://youtrack.jetbrains.com/issue/CMP-8862) Merge Jetpack Material 3 1.4.0-beta03 [CMP-8863](https://youtrack.jetbrains.com/issue/CMP-8863) Merge Jetpack Lifecycle 2.9.3 [CMP-8864](https://youtrack.jetbrains.com/issue/CMP-8864) Merge Jetpack Savedstate 1.3.2 [CMP-8865](https://youtrack.jetbrains.com/issue/CMP-8865) Setup redirection for lifecycle-runtime-compose and savedstate-compose | GroupId | ReleaseVersion | ReleaseSHA | ReleaseBuildId | ReleaseDate | | --- | --- | --- | --- | --- | | androidx.compose.material3 | 1.4.0-beta03 | 690cd9e | 13958485 | 8/27/2025 | | androidx.lifecycle | 2.9.3 | 8760ebe | 13943607 | 8/27/2025 | | androidx.savedstate | 1.3.2 | 1f24bdb | 13944572 | 8/27/2025 | ## Release Notes N/A
2 parents fba3642 + c8df94d commit 5b94e38

File tree

17 files changed

+240
-12
lines changed

17 files changed

+240
-12
lines changed

gradle.properties

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -109,16 +109,16 @@ jetbrains.compose.compiler.version=1.5.14.1
109109
# (artifactRedirection.version.androidx.compose covers androidx.compose.*:*)
110110
artifactRedirection.version.androidx.compose=1.9.0
111111
artifactRedirection.version.androidx.compose.material.material-navigation=1.9.0
112-
artifactRedirection.version.androidx.compose.material3=1.4.0-beta02
112+
artifactRedirection.version.androidx.compose.material3=1.4.0-beta03
113113
artifactRedirection.version.androidx.compose.material3.adaptive=1.2.0-alpha10
114114
artifactRedirection.version.androidx.compose.material3.common=1.0.0-alpha01
115115
artifactRedirection.version.androidx.collection=1.5.0
116116
artifactRedirection.version.androidx.annotation=1.9.1
117117
artifactRedirection.version.androidx.graphics=1.0.1
118-
artifactRedirection.version.androidx.lifecycle=2.9.2
118+
artifactRedirection.version.androidx.lifecycle=2.9.3
119119
artifactRedirection.version.androidx.navigation=2.9.1
120120
artifactRedirection.version.androidx.performance=1.0.0-alpha01
121-
artifactRedirection.version.androidx.savedstate=1.3.1
121+
artifactRedirection.version.androidx.savedstate=1.3.2
122122
artifactRedirection.version.androidx.window=1.4.0
123123

124124
# Enable atomicfu IR transformations

libraryversions.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ CAR_APP = "1.7.0-beta02"
2121
COLLECTION = "1.5.0-alpha03"
2222
COMPOSE = "1.9.0"
2323
COMPOSE_MATERIAL_NAVIGATION = "1.9.0"
24-
COMPOSE_MATERIAL3 = "1.4.0-beta02"
24+
COMPOSE_MATERIAL3 = "1.4.0-beta03"
2525
COMPOSE_MATERIAL3_ADAPTIVE = "1.2.0-alpha10"
2626
COMPOSE_RUNTIME_TRACING = "1.0.0-beta01"
2727
CONSTRAINTLAYOUT = "2.2.0-beta01"
@@ -89,7 +89,7 @@ LEANBACK_PREFERENCE = "1.2.0-beta01"
8989
LEANBACK_TAB = "1.1.0-beta01"
9090
LEGACY = "1.1.0-alpha01"
9191
LIBYUV = "0.1.0-dev01"
92-
LIFECYCLE = "2.9.2"
92+
LIFECYCLE = "2.9.3"
9393
LIFECYCLE_EXTENSIONS = "2.2.0"
9494
LINT = "1.0.0-alpha02"
9595
LOADER = "1.2.0-alpha01"
@@ -118,7 +118,7 @@ REMOTECALLBACK = "1.0.0-alpha02"
118118
RESOURCEINSPECTION = "1.1.0-alpha01"
119119
ROOM = "2.7.0-alpha08"
120120
SAFEPARCEL = "1.0.0-alpha01"
121-
SAVEDSTATE = "1.3.1"
121+
SAVEDSTATE = "1.3.2"
122122
SECURITY = "1.1.0-alpha07"
123123
SECURITY_APP_AUTHENTICATOR = "1.0.0-rc01"
124124
SECURITY_APP_AUTHENTICATOR_TESTING = "1.0.0-rc01"

lifecycle/lifecycle-runtime-compose-compatibility-stub/api/desktop/lifecycle-runtime-compose.api

Whitespace-only changes.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
// Klib ABI Dump
2+
// Targets: [iosArm64.uikitArm64, iosSimulatorArm64.uikitSimArm64, iosX64.uikitX64, js, linuxArm64, linuxX64, macosArm64, macosX64, mingwX64, tvosArm64, tvosSimulatorArm64, tvosX64, wasmJs, watchosArm32, watchosArm64, watchosSimulatorArm64, watchosX64]
3+
// Rendering settings:
4+
// - Signature version: 2
5+
// - Show manifest properties: true
6+
// - Show declarations: true
7+
8+
// Library unique name: <org.jetbrains.androidx.lifecycle:lifecycle-runtime-compose>
Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
/*
2+
* Copyright 2022 The Android Open Source Project
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
* you may not use this file except in compliance with the License.
6+
* You may obtain a copy of the License at
7+
*
8+
* http://www.apache.org/licenses/LICENSE-2.0
9+
*
10+
* Unless required by applicable law or agreed to in writing, software
11+
* distributed under the License is distributed on an "AS IS" BASIS,
12+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
* See the License for the specific language governing permissions and
14+
* limitations under the License.
15+
*/
16+
17+
/**
18+
* This file was created using the `create_project.py` script located in the
19+
* `<AndroidX root>/development/project-creator` directory.
20+
*
21+
* Please use that script when creating a new project, rather than copying an existing project and
22+
* modifying its settings.
23+
*/
24+
25+
import androidx.build.JetbrainsAndroidXPlugin
26+
import androidx.build.AndroidXComposePlugin
27+
import androidx.build.LibraryType
28+
import org.jetbrains.kotlin.gradle.plugin.KotlinPlatformType
29+
30+
plugins {
31+
id("AndroidXPlugin")
32+
id("com.android.library")
33+
id("AndroidXComposePlugin")
34+
id("JetbrainsAndroidXPlugin")
35+
}
36+
37+
AndroidXComposePlugin.applyAndConfigureKotlinPlugin(project)
38+
JetbrainsAndroidXPlugin.applyAndConfigure(project)
39+
40+
androidXComposeMultiplatform {
41+
android()
42+
desktop()
43+
darwin()
44+
js()
45+
wasm()
46+
linux()
47+
}
48+
49+
kotlin {
50+
watchosArm64()
51+
watchosArm32()
52+
watchosX64()
53+
watchosSimulatorArm64()
54+
tvosArm64()
55+
tvosX64()
56+
tvosSimulatorArm64()
57+
mingwX64()
58+
59+
sourceSets {
60+
commonMain {
61+
dependencies {
62+
def version = project.findProperty('artifactRedirection.version.androidx.lifecycle')
63+
api("androidx.lifecycle:lifecycle-runtime-compose:$version")
64+
65+
// Keep direct reference to Compose multiplatform 1.9.x to correctly resolve
66+
// New redirections to Google's artifacts
67+
implementation(project(":compose:runtime:runtime"))
68+
}
69+
}
70+
}
71+
}
72+
73+
androidx {
74+
name = "Lifecycle Runtime Compose"
75+
type = LibraryType.PUBLISHED_LIBRARY
76+
inceptionYear = "2021"
77+
description = "Compose integration with Lifecycle"
78+
metalavaK2UastEnabled = true
79+
}
80+
81+
android {
82+
namespace "androidx.lifecycle.runtime.compose"
83+
}
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
/*
2+
* Copyright 2025 The Android Open Source Project
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
* you may not use this file except in compliance with the License.
6+
* You may obtain a copy of the License at
7+
*
8+
* http://www.apache.org/licenses/LICENSE-2.0
9+
*
10+
* Unless required by applicable law or agreed to in writing, software
11+
* distributed under the License is distributed on an "AS IS" BASIS,
12+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
* See the License for the specific language governing permissions and
14+
* limitations under the License.
15+
*/
16+
17+
// We prefer to have no source code here, but a module can't be empty.
18+
// We use this module to publish a dumb klib to be provided to the compilation of user projects.
19+
// It's needed because Kotlin tries to resolve the dependencies listed in klib manifest.
20+
// There is an intention to drop this behavior: https://youtrack.jetbrains.com/issue/KT-61096
21+
// The actual klib is published at androidx maven coordinates in Google maven.
22+
// This module depends on the actual klib, so the module API will be available transitively.

lifecycle/lifecycle-runtime-compose/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ kotlin {
6262
api(project(":annotation:annotation"))
6363
implementation(project(":lifecycle:lifecycle-common"))
6464
api project(":lifecycle:lifecycle-runtime")
65-
api("org.jetbrains.compose.runtime:runtime:1.8.2")
65+
api project(":compose:runtime:runtime")
6666

6767
implementation(libs.kotlinStdlib)
6868
}

lifecycle/lifecycle-viewmodel-compose/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,11 +52,11 @@ kotlin {
5252
api(project(":lifecycle:lifecycle-common"))
5353
api(project(":lifecycle:lifecycle-viewmodel"))
5454
api("androidx.annotation:annotation:1.9.1")
55-
api("org.jetbrains.compose.runtime:runtime:1.8.2")
55+
api(project(":compose:runtime:runtime"))
5656

5757
// Moved from platform dependencies
5858
api(project(":lifecycle:lifecycle-viewmodel-savedstate"))
59-
api("org.jetbrains.compose.ui:ui:1.8.2")
59+
api(project(":compose:ui:ui"))
6060

6161
api(libs.kotlinSerializationCore)
6262
implementation(libs.kotlinStdlib)

mpp/docs/Stubbed Projects.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,11 @@
66
- `:compose:runtime:runtime` is stubbed by `:compose:runtime:runtime-compatibility-stubs`, it depends on `androidx.compose.runtime:runtime`
77
- `:lifecycle:lifecycle-common` is stubbed by `lifecycle/lifecycle-common-compatibility-stub`, it depends on `androidx.lifecycle:lifecycle-common`
88
- `:lifecycle:lifecycle-runtime` is stubbed by `lifecycle/lifecycle-runtime-compatibility-stub`, it depends on `androidx.lifecycle:lifecycle-runtime`
9+
- `:lifecycle:lifecycle-runtime-compose` is stubbed by `lifecycle/lifecycle-runtime-compose-compatibility-stub`, it depends on `androidx.lifecycle:lifecycle-runtime-compose`
910
- `:lifecycle:lifecycle-viewmodel` is stubbed by `lifecycle/lifecycle-viewmodel-compatibility-stub`, it depends on `androidx.lifecycle:lifecycle-viewmodel`
1011
- `:lifecycle:lifecycle-viewmodel-savedstate` is stubbed by `lifecycle/lifecycle-viewmodel-savedstate-compatibility-stub`, it depends on `androidx.lifecycle:lifecycle-viewmodel-savedstate`
1112
- `:savedstate:savedstate` is stubbed by `savedstate/savedstate-compatibility-stub`, it depends on `androidx.savedstate:savedstate`
13+
- `:savedstate:savedstate-compose` is stubbed by `savedstate/savedstate-compose-compatibility-stub`, it depends on `androidx.savedstate:savedstate-compose`
1214

1315
### Purpose
1416
The need for "stubbed projects" appeared in this PR - https://github.com/JetBrains/compose-multiplatform-core/pull/1819

0 commit comments

Comments
 (0)