Status Update
Comments
ap...@google.com <ap...@google.com> #2
Branch: androidx-master-dev
commit b90079595f33f58fece04026a97faa0d243acdb1
Author: Yuichi Araki <yaraki@google.com>
Date: Wed Sep 18 16:55:49 2019
Change the way to detect mismatch between POJO and query
This fixes cursor mismatch warnings with expandProjection.
Bug: 140759491
Test: QueryMethodProcessorTest
Change-Id: I7659002e5e0d1ef60fc1af2a625c0c36da0664d8
M room/compiler/src/main/kotlin/androidx/room/processor/QueryMethodProcessor.kt
M room/compiler/src/main/kotlin/androidx/room/solver/TypeAdapterStore.kt
M room/compiler/src/main/kotlin/androidx/room/solver/query/result/PojoRowAdapter.kt
M room/compiler/src/test/kotlin/androidx/room/processor/QueryMethodProcessorTest.kt
M room/compiler/src/test/kotlin/androidx/room/testing/TestProcessor.kt
ap...@google.com <ap...@google.com> #3
ap...@google.com <ap...@google.com> #4
Branch: androidx-master-dev
commit bdde5a1a970ddc9007b28de4aa29d60ffa588f08
Author: Yigit Boyar <yboyar@google.com>
Date: Thu Apr 16 16:47:05 2020
Re-factor how errors are dismissed when query is re-written
This CL changes how we handle errors/warnings if query is
re-written.
There was a bug in expandProjection where we would report warnings
for things that Room already fixes automatically (
The solution to that problem (I7659002e5e0d1ef60fc1af2a625c0c36da0664d8)
solved it by deferring validating of columns until after re-write
decision is made. Unfortunately, this required changing PojoRowAdapter
to have a dummy mapping until it is validating, make it hard to use
as it does have a non-null mapping which is not useful.
This CL partially reverts that change and instead rely on the log
deferring logic we have in Context. This way, we don't need to break
the stability of PojoRowAdapter while still having the ability to
drop warnings that room fixes. This will also play nicer when we
have different query re-writing options that can use more information
about the query results.
Bug: 153387066
Bug: 140759491
Test: existing tests pass
Change-Id: I2ec967c763d33d7a3ff02c1a13c6953b460d1e5f
M room/compiler/src/main/kotlin/androidx/room/log/RLog.kt
M room/compiler/src/main/kotlin/androidx/room/processor/QueryMethodProcessor.kt
M room/compiler/src/main/kotlin/androidx/room/solver/TypeAdapterStore.kt
M room/compiler/src/main/kotlin/androidx/room/solver/query/result/PojoRowAdapter.kt
ap...@google.com <ap...@google.com> #5
Project: platform/frameworks/support
Branch: androidx-main
Author: Marcello Galhardo <
Link:
Add compileSdk
to savedstate-samples
Expand for full commit details
Add `compileSdk` to `savedstate-samples`
Test: N/A
Bug: 376027806
Change-Id: Id370a67dfe50b7d980f4d94a279aaf68b6e3c745
Files:
- M
savedstate/savedstate-samples/build.gradle
Hash: 712066e39e001092b012cd85e52dedd9cdad9544
Date: Mon Nov 04 18:08:28 2024
ap...@google.com <ap...@google.com> #6
Project: platform/frameworks/support
Branch: androidx-main
Author: Marcello Galhardo <
Link:
Add samples to SavedStateRegistryOwner.saved
property delegate
Expand for full commit details
Add samples to `SavedStateRegistryOwner.saved` property delegate
Test: N/A
Bug: 376027806
Change-Id: I94a44325435d36cefffe5f735cd182afddd7bec5
Files:
- M
savedstate/savedstate-samples/build.gradle
- A
savedstate/savedstate-samples/src/main/java/androidx/savedstate/serialization/SavedStateRegistryOwnerDelegatesSamples.kt
- M
savedstate/savedstate/src/commonMain/kotlin/androidx/savedstate/serialization/SavedStateRegistryOwnerDelegates.kt
Hash: 0b99d451c316024a1660969dabe286e1fc77c03c
Date: Mon Nov 04 16:09:00 2024
ap...@google.com <ap...@google.com> #7
Project: platform/frameworks/support
Branch: androidx-main
Author: Marcello Galhardo <
Link:
Fix SavedState.contentDeepEquals
with nested SavedState
on non-Android platforms
Expand for full commit details
Fix `SavedState.contentDeepEquals` with nested `SavedState` on non-Android platforms
* Non-Android platforms introduce a new `SavedState` symbol that wraps a `map`. Therefore, it has no default implementation for handling content deep equality like a conventional `map`.
* Note: The original implementation for non-Android used interface delegation to implement the `Map` interface, but we have changed that to avoid exposing the `Map` API and consistently require clients to use `read`/`write` on all platforms for accessing the content. That design change caused this bug.
* Includes support for primitive arrays.
Test: SavedStateTest
Bug: 376027806
Change-Id: Ic2cf4553a420ae0ef9487c43b6f05340c26f8747
Files:
- M
savedstate/savedstate/api/restricted_current.txt
- M
savedstate/savedstate/src/androidMain/kotlin/androidx/savedstate/SavedStateReader.android.kt
- M
savedstate/savedstate/src/commonTest/kotlin/androidx/savedstate/SavedStateTest.kt
- M
savedstate/savedstate/src/nonAndroidMain/kotlin/androidx/savedstate/SavedStateReader.nonAndroid.kt
Hash: e3c9d523185d1b367b43c2e87a7911e5abc37acc
Date: Tue Nov 05 11:06:42 2024
ap...@google.com <ap...@google.com> #8
Project: platform/frameworks/support
Branch: androidx-main
Author: Marcello Galhardo <
Link:
Fix SavedStateReadWriteProperty
saving outdated values
Expand for full commit details
Fix `SavedStateReadWriteProperty` saving outdated values
* `value` was incorrectly resolving to the initial value instead of the updated `this.value`.
* Includes a fix in the unit test to catch this problem if it ever happens again.
Test: SavedStateRegistryOwnerDelegatesTest
Bug: 376027806
Change-Id: I48469094b4064964b4800684c0702bfc99b3b2a5
Files:
- M
savedstate/savedstate/src/commonMain/kotlin/androidx/savedstate/serialization/SavedStateRegistryOwnerDelegates.kt
- M
savedstate/savedstate/src/commonTest/kotlin/androidx/savedstate/serialization/SavedStateRegistryOwnerDelegatesTest.kt
Hash: c041cc69754ec02ec7b255112e1b843beb158e19
Date: Wed Nov 06 11:03:11 2024
il...@google.com <il...@google.com> #9
This has been fixed internally and will be available in SavedState 1.3.0-alpha05.
ap...@google.com <ap...@google.com> #10
Project: platform/frameworks/support
Branch: androidx-main
Author: Kuan-Ying Chou <
Link:
Fix empty SavedStates not getting restored
Expand for full commit details
Fix empty SavedStates not getting restored
Fixes an issue that when we restore an empty SavedState (e.g. from an empty List or an object without properties) we will ignore it and call the initailizer instead.
Bug: 376027806
Bug: 376026744
Test: SerializationTest.kt, SavedStateRegistryOwnerDelegatesTest.kt
Change-Id: Ibc7b93a58c3327589e1b1e30573459dde266ae72
Files:
- M
lifecycle/lifecycle-viewmodel-savedstate/src/androidInstrumentedTest/kotlin/androidx/lifecycle/SerializationTest.kt
- M
lifecycle/lifecycle-viewmodel-savedstate/src/commonMain/kotlin/androidx/lifecycle/SavedStateHandleDelegates.kt
- M
savedstate/savedstate/src/commonMain/kotlin/androidx/savedstate/serialization/SavedStateRegistryOwnerDelegates.kt
- M
savedstate/savedstate/src/commonTest/kotlin/androidx/savedstate/serialization/SavedStateRegistryOwnerDelegatesTest.kt
Hash: 61e4357bcd441f896695fdebe1e8d4f8108ae520
Date: Thu Nov 07 23:59:57 2024
na...@google.com <na...@google.com> #11
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.lifecycle:lifecycle-viewmodel-savedstate:2.9.0-alpha07
androidx.lifecycle:lifecycle-viewmodel-savedstate-android:2.9.0-alpha07
androidx.lifecycle:lifecycle-viewmodel-savedstate-desktop:2.9.0-alpha07
androidx.lifecycle:lifecycle-viewmodel-savedstate-iosarm64:2.9.0-alpha07
androidx.lifecycle:lifecycle-viewmodel-savedstate-iossimulatorarm64:2.9.0-alpha07
androidx.lifecycle:lifecycle-viewmodel-savedstate-iosx64:2.9.0-alpha07
androidx.lifecycle:lifecycle-viewmodel-savedstate-linuxarm64:2.9.0-alpha07
androidx.lifecycle:lifecycle-viewmodel-savedstate-linuxx64:2.9.0-alpha07
androidx.lifecycle:lifecycle-viewmodel-savedstate-macosarm64:2.9.0-alpha07
androidx.lifecycle:lifecycle-viewmodel-savedstate-macosx64:2.9.0-alpha07
androidx.savedstate:savedstate:1.3.0-alpha05
androidx.savedstate:savedstate-android:1.3.0-alpha05
androidx.savedstate:savedstate-desktop:1.3.0-alpha05
androidx.savedstate:savedstate-iosarm64:1.3.0-alpha05
androidx.savedstate:savedstate-iossimulatorarm64:1.3.0-alpha05
androidx.savedstate:savedstate-iosx64:1.3.0-alpha05
androidx.savedstate:savedstate-linuxarm64:1.3.0-alpha05
androidx.savedstate:savedstate-linuxx64:1.3.0-alpha05
androidx.savedstate:savedstate-macosarm64:1.3.0-alpha05
androidx.savedstate:savedstate-macosx64:1.3.0-alpha05
ap...@google.com <ap...@google.com> #12
Project: platform/frameworks/support
Branch: androidx-main
Author: Kuan-Ying Chou <
Link:
Don't load value from SavedState or call init() when set() happens before get()
Expand for full commit details
Don't load value from SavedState or call init() when set() happens before get()
Bug: 376027806
Bug: 376026744
Test: SerializationTest, SavedStateRegistryOwnerDelegatesTest
Change-Id: I466a149716350aa5a4a8b50d787c14143b3a4060
Files:
- M
lifecycle/lifecycle-viewmodel-savedstate/src/androidInstrumentedTest/kotlin/androidx/lifecycle/SerializationTest.kt
- M
lifecycle/lifecycle-viewmodel-savedstate/src/commonMain/kotlin/androidx/lifecycle/SavedStateHandleDelegates.kt
- M
savedstate/savedstate/src/commonMain/kotlin/androidx/savedstate/serialization/SavedStateRegistryOwnerDelegates.kt
- M
savedstate/savedstate/src/commonTest/kotlin/androidx/savedstate/serialization/SavedStateRegistryOwnerDelegatesTest.kt
Hash: 4eefb5afedd1a6741b8c1a8606936921faf46f09
Date: Fri Nov 08 10:53:37 2024
pr...@google.com <pr...@google.com> #13
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.lifecycle:lifecycle-viewmodel-savedstate:2.9.0-alpha08
androidx.lifecycle:lifecycle-viewmodel-savedstate-android:2.9.0-alpha08
androidx.lifecycle:lifecycle-viewmodel-savedstate-desktop:2.9.0-alpha08
androidx.lifecycle:lifecycle-viewmodel-savedstate-iosarm64:2.9.0-alpha08
androidx.lifecycle:lifecycle-viewmodel-savedstate-iossimulatorarm64:2.9.0-alpha08
androidx.lifecycle:lifecycle-viewmodel-savedstate-iosx64:2.9.0-alpha08
androidx.lifecycle:lifecycle-viewmodel-savedstate-linuxarm64:2.9.0-alpha08
androidx.lifecycle:lifecycle-viewmodel-savedstate-linuxx64:2.9.0-alpha08
androidx.lifecycle:lifecycle-viewmodel-savedstate-macosarm64:2.9.0-alpha08
androidx.lifecycle:lifecycle-viewmodel-savedstate-macosx64:2.9.0-alpha08
androidx.savedstate:savedstate:1.3.0-alpha06
androidx.savedstate:savedstate-android:1.3.0-alpha06
androidx.savedstate:savedstate-desktop:1.3.0-alpha06
androidx.savedstate:savedstate-iosarm64:1.3.0-alpha06
androidx.savedstate:savedstate-iossimulatorarm64:1.3.0-alpha06
androidx.savedstate:savedstate-iosx64:1.3.0-alpha06
androidx.savedstate:savedstate-linuxarm64:1.3.0-alpha06
androidx.savedstate:savedstate-linuxx64:1.3.0-alpha06
androidx.savedstate:savedstate-macosarm64:1.3.0-alpha06
androidx.savedstate:savedstate-macosx64:1.3.0-alpha06
Description
With KotlinX Serialization support for
SavedState
, it is reasonable to expect support in theSavedStateRegistryOwner
. That could look like the following: