-
Notifications
You must be signed in to change notification settings - Fork 89
Revert material3 to 1.3.1 #1868
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Could we get the reason behind this change? I already had some implementations of some of the new components and this will break my app (which will be a pain to get around it, although its was dev versions and its understandable) |
It's due to difference in release cycles. Google won't release stable material3 1.4 together/before with Compose 1.8, but on multiplatform it shares the same version. Due to stability expectations we cannot release beta/stable version based on Google's alpha version. We're thinking how to gracefully separate this in future versions, but for 1.8 we have to revert it to 1.3.x state. You can continue using alpha03 version for material3 if you want to experiment with new APIs from there |
…le` afterward (#1601) # Conflicts: # compose/ui/ui-test/src/skikoTest/kotlin/androidx/compose/ui/test/TestBasicsTest.kt # navigation/navigation-compose/src/commonTest/kotlin/androidx/navigation/compose/NavHostTest.kt
…1696) These are preparation to build Compose 1.8.0-alpha01 from `jb-main` branch. 1. Set the default version to 9999.0.0-SNAPSHOT. It is needed for pinning, more in the code comment. **Alternative** Move versioning from CI to `libraryversions.toml`. It will contain all next versions we need to publish, and they are always greater than the pinned versions. This requires some work and I didn't plan it in the short term. **Disadvantage** We can accidentally publish it to the dev repo. But users won't see it in the suggestions because it is `-SNAPSHOT`. This is also true for the alternative, so we have this disadvantage anyway. 2. Pin all dependencies to be able to not release them. Not pinned dependencies: - collection (new API needed) - core (new lib core-uri) - shapes (no stable version) ## Testing 1. Build ``` ./gradlew publishComposeJbToMavenLocal ``` 2. Check module files 3. Sync and run the version on the desktop template 4. run1, runDemo # Conflicts: # compose/animation/animation-core/build.gradle # compose/foundation/foundation-layout/build.gradle # compose/foundation/foundation/build.gradle # compose/material/material/build.gradle # compose/runtime/runtime/build.gradle # compose/ui/ui-graphics/build.gradle # compose/ui/ui-test-junit4/build.gradle # compose/ui/ui-test/build.gradle # compose/ui/ui-text/build.gradle # compose/ui/ui-unit/build.gradle # compose/ui/ui/build.gradle # lifecycle/lifecycle-viewmodel-savedstate/build.gradle # navigation/navigation-common/build.gradle # navigation/navigation-compose/build.gradle # navigation/navigation-runtime/build.gradle # savedstate/savedstate/build.gradle
# Conflicts: # compose/runtime/runtime/build.gradle # compose/ui/ui/build.gradle
53e5c1f
to
1df3651
Compare
# Conflicts: # buildSrc/private/src/main/kotlin/androidx/build/AndroidXMultiplatformExtension.kt # compose/material3/material3/api/desktop/material3.api # compose/runtime/runtime/src/nonEmulatorCommonTest/kotlin/androidx/compose/runtime/snapshots/SnapshotStateMapTests.kt # gradle/libs.versions.toml # navigation/navigation-compose/build.gradle # navigation/navigation-compose/src/commonMain/kotlin/androidx/navigation/compose/DialogNavigator.kt # navigation/navigation-runtime/src/commonMain/kotlin/androidx/navigation/NavControllerViewModel.kt # navigation/navigation-runtime/src/jbMain/kotlin/androidx/navigation/NavControllerViewModel.jb.kt
…h WeakMap (#1752) # Conflicts: # lifecycle/lifecycle-viewmodel-savedstate/src/jvmMain/kotlin/androidx/lifecycle/serialization/SavedStateHandleDelegates.jvm.kt # navigation/navigation-runtime/src/jsMain/kotlin/androidx/navigation/internal/Utils.js.kt
Since `PredictiveBackHandler` were previously commonized (without actual implementation yet), it's no longer necessary to wrap usages of it into expect/actual. It fixes missing implementation of `DrawerPredictiveBackHandler` on non-Android platforms. Fixes https://youtrack.jetbrains.com/issue/CMP-1301 and https://youtrack.jetbrains.com/issue/CMP-7309 ## Release Notes ### Fixes - Multiple Platforms - Fix missing implementation on non-Android platforms for `ModalDrawerSheet` overload with `DrawerState` argument
…pose modules. # Conflicts: # navigation/navigation-compose/build.gradle # navigation/navigation-compose/src/commonMain/kotlin/androidx/navigation/compose/NavHost.kt
1df3651
to
c50e615
Compare
Fixes https://youtrack.jetbrains.com/issue/CMP-7918/Inconsistent-source-with-NavigationSuiteScaffold-in-1.8.0-beta01 Continuation of #1868 There are more folders that also use Material3 version: ``` git checkout --no-overlay v1.7.3 -- compose/material3/material3-window-size-class git checkout --no-overlay v1.7.3 -- compose/material3/material3-common git checkout --no-overlay v1.7.3 -- compose/material3/material3-adaptive-navigation-suite ``` From: ``` $ git log origin/jb-main --not v1.7.3 --not origin/integration --not aosp/androidx-main --oneline -- compose/material3/material3-adaptive-navigation-suite a75f494 Merge branch 'jb-main' into integration 3e4c674 Support API dumping for Klibs (#1947) c1a20ec Merge branch 'jb-main' into integration 0edb57f Depend on collection/annotation `project` instead of an artifact (#1945) e3e9ddc Merge commit '7a145e052ae61e272e91ffe285e9451b8ab71870' into integration a273606 (tag: v1.8.0+dev2134) Fix Compose usage in non-Gradle Desktop projects (#1872) 4818376 Copy compose-material3 from e545e49 de5792a Copy compose-material3 from 1469382 f56f6e7 Update kotlin version to 2.1.0 (#1778) 330c557 Copy compose-material3 from fccc3e0 b6eba02 (tag: v1.8.0-alpha01, tag: v1.8.0+dev1955) Set the default version to 9999.0.0-SNAPSHOT, pin all dependencies (#1696) 38bd05f Copy compose-material3 from 0c5014a $ git log origin/jb-main --not v1.7.3 --not origin/integration --not aosp/androidx-main --oneline -- compose/material3/material3-common 47911ee Restore stubs from commit '78132378b67c86698d1ade3dc368c9f15d738a71' to avoid conflicts a75f494 Merge branch 'jb-main' into integration 3e4c674 Support API dumping for Klibs (#1947) e3e9ddc Merge commit '7a145e052ae61e272e91ffe285e9451b8ab71870' into integration a273606 (tag: v1.8.0+dev2134) Fix Compose usage in non-Gradle Desktop projects (#1872) 551007f Reimplement js and was identityHashCode family of implementations with WeakMap (#1752) 330c557 Copy compose-material3 from fccc3e0 38bd05f Copy compose-material3 from 0c5014a $ git log origin/jb-main --not v1.7.3 --not origin/integration --not aosp/androidx-main --oneline -- compose/material3/material3-window-size-class 47911ee Restore stubs from commit '78132378b67c86698d1ade3dc368c9f15d738a71' to avoid conflicts a75f494 Merge branch 'jb-main' into integration 3e4c674 Support API dumping for Klibs (#1947) e3e9ddc Merge commit '7a145e052ae61e272e91ffe285e9451b8ab71870' into integration a273606 (tag: v1.8.0+dev2134) Fix Compose usage in non-Gradle Desktop projects (#1872) 38bd05f Copy compose-material3 from 0c5014a ``` I chose to cherry-pick: ``` 3e4c674 Support API dumping for Klibs (#1947) 0edb57f Depend on collection/annotation `project` instead of an artifact (#1945) a273606 (tag: v1.8.0+dev2134) Fix Compose usage in non-Gradle Desktop projects (#1872) f56f6e7 Update kotlin version to 2.1.0 (#1778) b6eba02 (tag: v1.8.0-alpha01, tag: v1.8.0+dev1955) Set the default version to 9999.0.0-SNAPSHOT, pin all dependencies (#1696) 551007f Reimplement js and was identityHashCode family of implementations with WeakMap (#1752) ``` ## Release Notes ### Fixes - Multiple Platforms - _(prerelease fix)_ `org.jetbrains.compose.material3:material3-adaptive-navigation-suite`, `org.jetbrains.compose.material3:material3-window-size-class` are reverted to the 1.3.1 state. They will be reverted to 1.4 in CMP 1.9 with material3
CMP 1.8.0 will contain Material 1.3.1, not Material 1.4
Fixes https://youtrack.jetbrains.com/issue/CMP-7633/Revert-material3-to-1.3.1-state-for-CMP-1.8.x-release
Better to review commit by commit.
From:
I chose:
compose/material3/material3
.Testing
Release Notes
Breaking Changes - Multiple Platforms
1.4.0-alpha07
to1.3.1
because 1.4.0 Stable will be released only after Compose Multiplatform 1.8.0. As a workaround to continue using the new API, replace: