-
-
Notifications
You must be signed in to change notification settings - Fork 115
Description
get_chatlist and get_contacts are used for incremental search. user expectation for searches is that they're case-insensitive, so searching for alice shoud find Alice.
however, this works only for plain ASCII characters. having a chat named Ärger in german. cannot be found by ärger.
in languages as russian, this is even worse as all characters are non ASCII.
we had a similar issue for get_msgs, that, however, was fixed at #5321
maybe we should copy the same approach, so adding the columns chats.name_normalized and contacts.name_normalized - similar to edit, the columns need to be updated together on changes which is some work, but was regarded the easiest approach, without adding dependencies.
it is probably fine to fill the columns on a migration, even some tenthousands of records should be processed quick. but it seems also good enough to use the lazy approach from #5321
for contacts.addr: here, ascii case-insensitive search is good enough. we want to remove that from the incremental search at all and only return a result on a direct match (would be cool if that is targeted already with this issue, otherwise, we should file a new one)
to be clear, this issue is not about adding new flags or api.
we discussed that recently in the team, popping up again by a user report at https://support.delta.chat/t/contact-search-isnt-working-correctly/4359
@iequidoo, you did #5321 that time, maybe you can do a fix for this issue as well at some point - there is no urgency in this issue, so it should not block or delay more important things, however