mirror of https://github.com/usememos/memos.git
Add custom memos_unicode_lower() SQLite function to enable proper case-insensitive text search for non-English languages (Cyrillic, Greek, CJK, etc.). Previously, SQLite's LOWER() only worked for ASCII characters due to modernc.org/sqlite lacking ICU extension. This caused searches for non-English text to be case-sensitive (e.g., searching 'блины' wouldn't find 'Блины'). Changes: - Add store/db/sqlite/functions.go with Unicode case folding function - Register custom function using golang.org/x/text/cases.Fold() - Update filter renderer to use custom function for SQLite dialect - Add test for Unicode case-insensitive search - Make golang.org/x/text a direct dependency Fixes #5559 |
||
|---|---|---|
| .. | ||
| README.md | ||
| activity_test.go | ||
| attachment_filter_test.go | ||
| attachment_test.go | ||
| containers.go | ||
| filter_helpers_test.go | ||
| idp_test.go | ||
| inbox_test.go | ||
| instance_setting_test.go | ||
| main_test.go | ||
| memo_filter_test.go | ||
| memo_relation_test.go | ||
| memo_test.go | ||
| migrator_test.go | ||
| reaction_test.go | ||
| store.go | ||
| user_setting_test.go | ||
| user_test.go | ||
README.md
Store tests
How to test store with MySQL?
- Create a database in your MySQL server.
- Run the following command with two environment variables set:
DRIVER=mysql DSN=root@/memos_test go test -v ./test/store/...
DRIVERshould be set tomysql.DSNshould be set to the DSN of your MySQL server.