Fixed
Status Update
Comments
ap...@google.com <ap...@google.com> #2
Project: platform/frameworks/support
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
https://android-review.googlesource.com/1123258
https://goto.google.com/android-sha1/b90079595f33f58fece04026a97faa0d243acdb1
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
Project: platform/frameworks/support
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 ( b/140759491 ).
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
https://android-review.googlesource.com/1288456
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-master-dev
commit aba42ee317b69068fb6da49575dca03671ec547f
Author: rohitsat13 <rohitsat@google.com>
Date: Fri Nov 20 10:40:14 2020
RxDataMigration and RxSharedPreferencesMigration.
Add a wrapper for the RxDataMigration interface so that people can define migrations using RxJava
Relnote: """Added support for migrations written using RxJava with the RxDataMigration interface. The RxDataMigration interface is like the DataMigration interface, except using reactivex.Single's instead of suspend functions. You can implement this interface to define a custom migration.
This change also adds support for SharedPreferencesMigrationBuilder which allows easier construction of SharedPreferencesMigrations from java.
"""
Test: RxSharedPreferencesMigrationTest.kt
Bug: 170311106
Change-Id: If929664956cd1434eee5178432958b58722cd76c
M datastore/datastore-rxjava2/api/current.txt
M datastore/datastore-rxjava2/api/public_plus_experimental_current.txt
M datastore/datastore-rxjava2/api/restricted_current.txt
M datastore/datastore-rxjava2/build.gradle
M datastore/datastore-rxjava2/src/androidTest/java/androidx/datastore/rxjava2/RxDataStoreBuilderTest.java
A datastore/datastore-rxjava2/src/androidTest/java/androidx/datastore/rxjava2/RxSharedPreferencesMigrationTest.java
A datastore/datastore-rxjava2/src/main/java/androidx/datastore/rxjava2/RxDataMigration.java
M datastore/datastore-rxjava2/src/main/java/androidx/datastore/rxjava2/RxDataStoreBuilder.kt
A datastore/datastore-rxjava2/src/main/java/androidx/datastore/rxjava2/RxSharedPreferencesMigration.kt
M testutils/testutils-truth/src/main/java/androidx/testutils/assertions.kt
A testutils/testutils-truth/src/test/java/androidx/testutils/AssertionsTest.kt
https://android-review.googlesource.com/1470344
Branch: androidx-master-dev
commit aba42ee317b69068fb6da49575dca03671ec547f
Author: rohitsat13 <rohitsat@google.com>
Date: Fri Nov 20 10:40:14 2020
RxDataMigration and RxSharedPreferencesMigration.
Add a wrapper for the RxDataMigration interface so that people can define migrations using RxJava
Relnote: """Added support for migrations written using RxJava with the RxDataMigration interface. The RxDataMigration interface is like the DataMigration interface, except using reactivex.Single's instead of suspend functions. You can implement this interface to define a custom migration.
This change also adds support for SharedPreferencesMigrationBuilder which allows easier construction of SharedPreferencesMigrations from java.
"""
Test: RxSharedPreferencesMigrationTest.kt
Bug: 170311106
Change-Id: If929664956cd1434eee5178432958b58722cd76c
M datastore/datastore-rxjava2/api/current.txt
M datastore/datastore-rxjava2/api/public_plus_experimental_current.txt
M datastore/datastore-rxjava2/api/restricted_current.txt
M datastore/datastore-rxjava2/build.gradle
M datastore/datastore-rxjava2/src/androidTest/java/androidx/datastore/rxjava2/RxDataStoreBuilderTest.java
A datastore/datastore-rxjava2/src/androidTest/java/androidx/datastore/rxjava2/RxSharedPreferencesMigrationTest.java
A datastore/datastore-rxjava2/src/main/java/androidx/datastore/rxjava2/RxDataMigration.java
M datastore/datastore-rxjava2/src/main/java/androidx/datastore/rxjava2/RxDataStoreBuilder.kt
A datastore/datastore-rxjava2/src/main/java/androidx/datastore/rxjava2/RxSharedPreferencesMigration.kt
M testutils/testutils-truth/src/main/java/androidx/testutils/assertions.kt
A testutils/testutils-truth/src/test/java/androidx/testutils/AssertionsTest.kt
ap...@google.com <ap...@google.com> #6
Project: platform/frameworks/support
Branch: androidx-master-dev
commit 842f0818490cd3f31806c13bd2c0db681ac67e46
Author: rohitsat13 <rohitsat@google.com>
Date: Fri Dec 11 11:30:24 2020
Split preferencesKey<T> into individual types, e.g. intPreferencesKey, longPreferencesKey, etc.
Test: PreferencesFromJavaTest
Relnote: """ The preferencesKey<T>(name: String): Key<T> method has been removed and replaced with methods specific to each supported type, for example preferencesKey<Int>("int") is now preferencesIntKey("int") """
Bug: 170311106
Change-Id: Ibcfac9cca7c8a3dbf2eaae17bdb8c22a8ce5a9f7
M datastore/datastore-preferences-core/api/current.txt
M datastore/datastore-preferences-core/api/public_plus_experimental_current.txt
M datastore/datastore-preferences-core/api/restricted_current.txt
M datastore/datastore-preferences-core/src/main/java/androidx/datastore/preferences/core/Preferences.kt
A datastore/datastore-preferences-core/src/main/java/androidx/datastore/preferences/core/PreferencesFactory.kt
A datastore/datastore-preferences-core/src/main/java/androidx/datastore/preferences/core/PreferencesKeys.kt
M datastore/datastore-preferences-core/src/main/java/androidx/datastore/preferences/core/PreferencesSerializer.kt
M datastore/datastore-preferences-core/src/test/java/androidx/datastore/preferences/core/PreferenceDataStoreFactoryTest.kt
A datastore/datastore-preferences-core/src/test/java/androidx/datastore/preferences/core/PreferencesFromJavaTest.java
M datastore/datastore-preferences-core/src/test/java/androidx/datastore/preferences/core/PreferencesSerializerTest.kt
M datastore/datastore-preferences-core/src/test/java/androidx/datastore/preferences/core/PreferencesTest.kt
M datastore/datastore-preferences/src/androidTest/java/androidx/datastore/preferences/PreferenceDataStoreFactoryTest.kt
M datastore/datastore-preferences/src/androidTest/java/androidx/datastore/preferences/SharedPreferencesToPreferencesTest.kt
M datastore/datastore-preferences/src/main/java/androidx/datastore/preferences/SharedPreferencesMigration.kt
M datastore/datastore-sampleapp/src/main/java/com/example/datastoresampleapp/PreferencesDataStoreActivity.kt
https://android-review.googlesource.com/1526348
Branch: androidx-master-dev
commit 842f0818490cd3f31806c13bd2c0db681ac67e46
Author: rohitsat13 <rohitsat@google.com>
Date: Fri Dec 11 11:30:24 2020
Split preferencesKey<T> into individual types, e.g. intPreferencesKey, longPreferencesKey, etc.
Test: PreferencesFromJavaTest
Relnote: """ The preferencesKey<T>(name: String): Key<T> method has been removed and replaced with methods specific to each supported type, for example preferencesKey<Int>("int") is now preferencesIntKey("int") """
Bug: 170311106
Change-Id: Ibcfac9cca7c8a3dbf2eaae17bdb8c22a8ce5a9f7
M datastore/datastore-preferences-core/api/current.txt
M datastore/datastore-preferences-core/api/public_plus_experimental_current.txt
M datastore/datastore-preferences-core/api/restricted_current.txt
M datastore/datastore-preferences-core/src/main/java/androidx/datastore/preferences/core/Preferences.kt
A datastore/datastore-preferences-core/src/main/java/androidx/datastore/preferences/core/PreferencesFactory.kt
A datastore/datastore-preferences-core/src/main/java/androidx/datastore/preferences/core/PreferencesKeys.kt
M datastore/datastore-preferences-core/src/main/java/androidx/datastore/preferences/core/PreferencesSerializer.kt
M datastore/datastore-preferences-core/src/test/java/androidx/datastore/preferences/core/PreferenceDataStoreFactoryTest.kt
A datastore/datastore-preferences-core/src/test/java/androidx/datastore/preferences/core/PreferencesFromJavaTest.java
M datastore/datastore-preferences-core/src/test/java/androidx/datastore/preferences/core/PreferencesSerializerTest.kt
M datastore/datastore-preferences-core/src/test/java/androidx/datastore/preferences/core/PreferencesTest.kt
M datastore/datastore-preferences/src/androidTest/java/androidx/datastore/preferences/PreferenceDataStoreFactoryTest.kt
M datastore/datastore-preferences/src/androidTest/java/androidx/datastore/preferences/SharedPreferencesToPreferencesTest.kt
M datastore/datastore-preferences/src/main/java/androidx/datastore/preferences/SharedPreferencesMigration.kt
M datastore/datastore-sampleapp/src/main/java/com/example/datastoresampleapp/PreferencesDataStoreActivity.kt
ap...@google.com <ap...@google.com> #7
Project: platform/frameworks/support
Branch: androidx-main
commit 431cd63a24c2b35a543f5b6fda6ec5e088d06b3c
Author: rohitsat13 <rohitsat@google.com>
Date: Mon Dec 21 11:42:56 2020
Added datastore-rxjava3 and datastore-preferences-rxjava3.
I just copied the rxjava2 modules and replaced the imports with rxjava3 imports.
Test: Copied over tests from rxjava2 modules.
Relnote: This change adds the datastore-preferences-rxjava2 and datastore-preferences-rxjava3 modules
Bug: 170311106
Change-Id: If253fe05877f22b956cda2e2be27387ae76c9b33
A datastore/datastore-preferences-rxjava3/api/current.txt
A datastore/datastore-preferences-rxjava3/api/public_plus_experimental_current.txt
A datastore/datastore-preferences-rxjava3/api/res-current.txt
A datastore/datastore-preferences-rxjava3/api/restricted_current.txt
A datastore/datastore-preferences-rxjava3/build.gradle
A datastore/datastore-preferences-rxjava3/src/androidTest/java/androidx/datastore/preferences/rxjava3/RxPreferencesDataStoreBuilderTest.java
A datastore/datastore-preferences-rxjava3/src/main/AndroidManifest.xml
A datastore/datastore-preferences-rxjava3/src/main/java/androidx/datastore/preferences/rxjava3/RxPreferenceDataStoreBuilder.kt
A datastore/datastore-rxjava3/api/current.txt
A datastore/datastore-rxjava3/api/public_plus_experimental_current.txt
A datastore/datastore-rxjava3/api/res-current.txt
A datastore/datastore-rxjava3/api/restricted_current.txt
A datastore/datastore-rxjava3/build.gradle
A datastore/datastore-rxjava3/src/androidTest/AndroidManifest.xml
A datastore/datastore-rxjava3/src/androidTest/java/androidx/datastore/rxjava3/RxDataStoreBuilderTest.java
A datastore/datastore-rxjava3/src/androidTest/java/androidx/datastore/rxjava3/RxSharedPreferencesMigrationTest.java
A datastore/datastore-rxjava3/src/main/AndroidManifest.xml
A datastore/datastore-rxjava3/src/main/java/androidx/datastore/rxjava3/RxDataMigration.java
A datastore/datastore-rxjava3/src/main/java/androidx/datastore/rxjava3/RxDataStore.kt
A datastore/datastore-rxjava3/src/main/java/androidx/datastore/rxjava3/RxDataStoreBuilder.kt
A datastore/datastore-rxjava3/src/main/java/androidx/datastore/rxjava3/RxSharedPreferencesMigration.kt
A datastore/datastore-rxjava3/src/test-common/java/androidx/datastore/rxjava3/TestingSerializer.kt
A datastore/datastore-rxjava3/src/test/java/androidx/datastore/rxjava3/RxDataStoreTest.java
M settings.gradle
https://android-review.googlesource.com/1532596
Branch: androidx-main
commit 431cd63a24c2b35a543f5b6fda6ec5e088d06b3c
Author: rohitsat13 <rohitsat@google.com>
Date: Mon Dec 21 11:42:56 2020
Added datastore-rxjava3 and datastore-preferences-rxjava3.
I just copied the rxjava2 modules and replaced the imports with rxjava3 imports.
Test: Copied over tests from rxjava2 modules.
Relnote: This change adds the datastore-preferences-rxjava2 and datastore-preferences-rxjava3 modules
Bug: 170311106
Change-Id: If253fe05877f22b956cda2e2be27387ae76c9b33
A datastore/datastore-preferences-rxjava3/api/current.txt
A datastore/datastore-preferences-rxjava3/api/public_plus_experimental_current.txt
A datastore/datastore-preferences-rxjava3/api/res-current.txt
A datastore/datastore-preferences-rxjava3/api/restricted_current.txt
A datastore/datastore-preferences-rxjava3/build.gradle
A datastore/datastore-preferences-rxjava3/src/androidTest/java/androidx/datastore/preferences/rxjava3/RxPreferencesDataStoreBuilderTest.java
A datastore/datastore-preferences-rxjava3/src/main/AndroidManifest.xml
A datastore/datastore-preferences-rxjava3/src/main/java/androidx/datastore/preferences/rxjava3/RxPreferenceDataStoreBuilder.kt
A datastore/datastore-rxjava3/api/current.txt
A datastore/datastore-rxjava3/api/public_plus_experimental_current.txt
A datastore/datastore-rxjava3/api/res-current.txt
A datastore/datastore-rxjava3/api/restricted_current.txt
A datastore/datastore-rxjava3/build.gradle
A datastore/datastore-rxjava3/src/androidTest/AndroidManifest.xml
A datastore/datastore-rxjava3/src/androidTest/java/androidx/datastore/rxjava3/RxDataStoreBuilderTest.java
A datastore/datastore-rxjava3/src/androidTest/java/androidx/datastore/rxjava3/RxSharedPreferencesMigrationTest.java
A datastore/datastore-rxjava3/src/main/AndroidManifest.xml
A datastore/datastore-rxjava3/src/main/java/androidx/datastore/rxjava3/RxDataMigration.java
A datastore/datastore-rxjava3/src/main/java/androidx/datastore/rxjava3/RxDataStore.kt
A datastore/datastore-rxjava3/src/main/java/androidx/datastore/rxjava3/RxDataStoreBuilder.kt
A datastore/datastore-rxjava3/src/main/java/androidx/datastore/rxjava3/RxSharedPreferencesMigration.kt
A datastore/datastore-rxjava3/src/test-common/java/androidx/datastore/rxjava3/TestingSerializer.kt
A datastore/datastore-rxjava3/src/test/java/androidx/datastore/rxjava3/RxDataStoreTest.java
M settings.gradle
ap...@google.com <ap...@google.com> #8
Project: platform/frameworks/support
Branch: androidx-main
commit 4767533679a08261b7f5db398ea9b8cab13f4257
Author: rohitsat13 <rohitsat@google.com>
Date: Mon Nov 23 15:53:12 2020
Add datastore-preferences-rxjava2 module so people can build and use Preferences DataStore from java.
Test: Added tests for builder and RxPreferences
RelNote: Added RxPreferences so people can create Preferences keys from java and added RxPreferenceDataStoreBuilder so people can easily construct DataStore<Preferences>.
Bug: 170311106
Change-Id: I6b46555d67bf6bb61800b3fad0a7c27b72183ade
A datastore/datastore-preferences-rxjava2/api/current.txt
A datastore/datastore-preferences-rxjava2/api/public_plus_experimental_current.txt
A datastore/datastore-preferences-rxjava2/api/res-current.txt
A datastore/datastore-preferences-rxjava2/api/restricted_current.txt
A datastore/datastore-preferences-rxjava2/build.gradle
A datastore/datastore-preferences-rxjava2/src/androidTest/java/androidx/datastore/preferences/rxjava2/RxPreferencesDataStoreBuilderTest.java
A datastore/datastore-preferences-rxjava2/src/main/AndroidManifest.xml
A datastore/datastore-preferences-rxjava2/src/main/java/androidx/datastore/preferences/rxjava2/RxPreferenceDataStoreBuilder.kt
D datastore/datastore-rxjava2/src/androidTest/java/androidx/datastore/rxjava2/AssertThrows.kt
M settings.gradle
https://android-review.googlesource.com/1530641
Branch: androidx-main
commit 4767533679a08261b7f5db398ea9b8cab13f4257
Author: rohitsat13 <rohitsat@google.com>
Date: Mon Nov 23 15:53:12 2020
Add datastore-preferences-rxjava2 module so people can build and use Preferences DataStore from java.
Test: Added tests for builder and RxPreferences
RelNote: Added RxPreferences so people can create Preferences keys from java and added RxPreferenceDataStoreBuilder so people can easily construct DataStore<Preferences>.
Bug: 170311106
Change-Id: I6b46555d67bf6bb61800b3fad0a7c27b72183ade
A datastore/datastore-preferences-rxjava2/api/current.txt
A datastore/datastore-preferences-rxjava2/api/public_plus_experimental_current.txt
A datastore/datastore-preferences-rxjava2/api/res-current.txt
A datastore/datastore-preferences-rxjava2/api/restricted_current.txt
A datastore/datastore-preferences-rxjava2/build.gradle
A datastore/datastore-preferences-rxjava2/src/androidTest/java/androidx/datastore/preferences/rxjava2/RxPreferencesDataStoreBuilderTest.java
A datastore/datastore-preferences-rxjava2/src/main/AndroidManifest.xml
A datastore/datastore-preferences-rxjava2/src/main/java/androidx/datastore/preferences/rxjava2/RxPreferenceDataStoreBuilder.kt
D datastore/datastore-rxjava2/src/androidTest/java/androidx/datastore/rxjava2/AssertThrows.kt
M settings.gradle
Description