Fixed
Status Update
Comments
yb...@google.com <yb...@google.com>
ap...@google.com <ap...@google.com> #2
Project: platform/frameworks/support
Branch: androidx-master-dev
commit 332af23e080a15f919027cc9821a3f42b7ea3de5
Author: Daniel Santiago Rivera <danysantiago@google.com>
Date: Thu Nov 15 11:32:45 2018
Support custom FTS tokenizers.
Refactored tokenizer API to accept a String instead of a Enum so that
users can provide their custom tokenizer name when they ship their
compiled SQLite with such tokenizer. Note that if a custom tokenizer
is defined room will not verify the tokenizer nor its arguments during
compile time since the DB for verification will probably not have
the tokenizer.
Also bumped Room version to 2.1.0-alpha03
Bug: 119234881
Test: ./gradlew room:room-compiler:test \
room:room-migration:test \
room:integration-tests:testapp:cC
Change-Id: I56f17077bd8f9be056f1ae5a9d051d8dbc864ddc
M buildSrc/src/main/kotlin/androidx/build/LibraryVersions.kt
A room/common/api/2.1.0-alpha03.txt
M room/common/api/current.txt
M room/common/src/main/java/androidx/room/Fts3.java
M room/common/src/main/java/androidx/room/Fts4.java
M room/common/src/main/java/androidx/room/FtsOptions.java
M room/compiler/src/main/kotlin/androidx/room/verifier/DatabaseVerifier.kt
M room/compiler/src/main/kotlin/androidx/room/vo/FtsEntity.kt
M room/compiler/src/main/kotlin/androidx/room/vo/FtsOptions.kt
M room/compiler/src/test/kotlin/androidx/room/processor/Fts3TableEntityProcessorTest.kt
M room/compiler/src/test/kotlin/androidx/room/processor/Fts4TableEntityProcessorTest.kt
M room/compiler/src/test/kotlin/androidx/room/vo/FtsEntityTest.kt
M room/integration-tests/testapp/schemas/androidx.room.integration.testapp.migration.FtsMigrationTest.FtsMigrationDb/4.json
A room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/CustomFTSTokenizerTest.java
A room/runtime/api/2.1.0-alpha03.txt
A room/rxjava2/api/2.1.0-alpha03.txt
A room/testing/api/2.1.0-alpha03.txt
https://android-review.googlesource.com/828047
https://goto.google.com/android-sha1/332af23e080a15f919027cc9821a3f42b7ea3de5
Branch: androidx-master-dev
commit 332af23e080a15f919027cc9821a3f42b7ea3de5
Author: Daniel Santiago Rivera <danysantiago@google.com>
Date: Thu Nov 15 11:32:45 2018
Support custom FTS tokenizers.
Refactored tokenizer API to accept a String instead of a Enum so that
users can provide their custom tokenizer name when they ship their
compiled SQLite with such tokenizer. Note that if a custom tokenizer
is defined room will not verify the tokenizer nor its arguments during
compile time since the DB for verification will probably not have
the tokenizer.
Also bumped Room version to 2.1.0-alpha03
Bug: 119234881
Test: ./gradlew room:room-compiler:test \
room:room-migration:test \
room:integration-tests:testapp:cC
Change-Id: I56f17077bd8f9be056f1ae5a9d051d8dbc864ddc
M buildSrc/src/main/kotlin/androidx/build/LibraryVersions.kt
A room/common/api/2.1.0-alpha03.txt
M room/common/api/current.txt
M room/common/src/main/java/androidx/room/Fts3.java
M room/common/src/main/java/androidx/room/Fts4.java
M room/common/src/main/java/androidx/room/FtsOptions.java
M room/compiler/src/main/kotlin/androidx/room/verifier/DatabaseVerifier.kt
M room/compiler/src/main/kotlin/androidx/room/vo/FtsEntity.kt
M room/compiler/src/main/kotlin/androidx/room/vo/FtsOptions.kt
M room/compiler/src/test/kotlin/androidx/room/processor/Fts3TableEntityProcessorTest.kt
M room/compiler/src/test/kotlin/androidx/room/processor/Fts4TableEntityProcessorTest.kt
M room/compiler/src/test/kotlin/androidx/room/vo/FtsEntityTest.kt
M room/integration-tests/testapp/schemas/androidx.room.integration.testapp.migration.FtsMigrationTest.FtsMigrationDb/4.json
A room/integration-tests/testapp/src/androidTest/java/androidx/room/integration/testapp/test/CustomFTSTokenizerTest.java
A room/runtime/api/2.1.0-alpha03.txt
A room/rxjava2/api/2.1.0-alpha03.txt
A room/testing/api/2.1.0-alpha03.txt
da...@google.com <da...@google.com> #3
This will be available in Room 2.1.0-alpha03. The @FTS param for tokenizer now takes a string instead of a enum allowing you to specify the name of the custom tokenizer desired.
Description
Version used: 2.1
Devices/Android versions reproduced on: Google Pixel 3 XL | Android 9.0
c/o (Daniel Santiago Rivera <danysantiago@google.com>)
Room now supports FTS3/4 as well as built in SQLite3 tokenizers. We desire the ability to utilize our own custom tokenizers packaged in with our own sqlite custom implementations.
Perhaps adding a parameter to the @Fts4 annotation (customTokenizer = foo) and pass in any related arguments to the tokenizer as well.