-
-
Notifications
You must be signed in to change notification settings - Fork 55
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
[library] Use Xapian for library search on all fields #484
Comments
@veloman-yunkan I guess somehow kiwix/kiwix-tools#440 is a duplicate of this ticket... or least will be fixed at the same time? |
I can't agree. Though the description of that ticket contains ideas that allow it to consider it a duplicate of this one, its title doesn't suggest that at all.
Both tickets can be fixed in the same PR, however that is optional. |
I am currently extending the library unit-tests so that this change doesn't break anything (see #488). Though the functional coverage of catalog search/filtering has to be enhanced further, I already one questions at this point:
|
@veloman-yunkan I appreciate to see you taking a TDD approach here. That said, I believe we should try to be coherent and like for other fields, take a diacritic/case insensitive approach. |
@veloman-yunkan Do you confirm that the description/title search is diacritics/case insensitive (like the title/ft search in libzim). Not doing this generates unexpected behaviour like reported here for example kiwix/kiwix-android#2638. |
@kelson42 Just a note in |
I don't think we have to preserve this. As far as I know (@kelson42 please confirm), kiwix-lib is used by kiwix-tools, kiwix-desktop, kiwix-android (through the jni wrapper) and maybe kiwix-ios/macos (I don't know, maybe they directly use libzim). As far as those project are not broken (or updated), we are "good". |
@automactic Should confirm, but I believe Kiwix iOS downloads the whole OPDS stream (without any filtering) and parse/handle it on its own (without relying to the libkiwix). |
I just checked and it is so only partly. The titles/descriptions stored in the search DB are normalized to lower case with diacritics removed. However the query string is not normalized. As a result the query string is case insensitive but diacritics sensitive. |
@veloman-yunkan Thx for checking. This is something you can fix in this PR or should I open an other ticket? |
#460 provided a fix for #106, targeting (as requested) only the title/description fields.
Now it's time to use Xapian for search over all fields of the library entries.
The text was updated successfully, but these errors were encountered: