[PR #2903] [MERGED] fix: use Unicode-aware SQLite LIKE filtering #34775

Closed
opened 2026-04-20 21:53:46 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/actualbudget/actual/pull/2903
Author: @dymanoid
Created: 6/19/2024
Status: Merged
Merged: 7/4/2024
Merged by: @youngcw

Base: masterHead: issue-2755


📝 Commits (3)

  • 41689ee fix: use Unicode-aware SQLite filtering
  • 561214f Add release notes, fix type check
  • 2de3510 Fix code styling

📊 Changes

7 files changed (+128 additions, -4 deletions)

View changed files

📝 packages/loot-core/src/platform/server/sqlite/index.electron.ts (+5 -1)
📝 packages/loot-core/src/platform/server/sqlite/index.web.ts (+4 -1)
packages/loot-core/src/platform/server/sqlite/unicodeLike.test.ts (+57 -0)
packages/loot-core/src/platform/server/sqlite/unicodeLike.ts (+32 -0)
📝 packages/loot-core/src/server/aql/compiler.test.ts (+22 -0)
📝 packages/loot-core/src/server/aql/compiler.ts (+2 -2)
upcoming-release-notes/2903.md (+6 -0)

📄 Description

Fixes: #2755, #2347

This PR changes the behavior of the LIKE SQLite queries. Instead of using the built-in implementation that can run in case-insensitive mode only for ASCII characters (and thus performs case-sensitive comparison for all other, like Cyrillic, diacritic, accents etc), the new implementation is based on JS regex that handles all characters in Unicode.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/actualbudget/actual/pull/2903 **Author:** [@dymanoid](https://github.com/dymanoid) **Created:** 6/19/2024 **Status:** ✅ Merged **Merged:** 7/4/2024 **Merged by:** [@youngcw](https://github.com/youngcw) **Base:** `master` ← **Head:** `issue-2755` --- ### 📝 Commits (3) - [`41689ee`](https://github.com/actualbudget/actual/commit/41689ee9fb117b4401f00fa97d92ac71af441d8b) fix: use Unicode-aware SQLite filtering - [`561214f`](https://github.com/actualbudget/actual/commit/561214f9c22620643e6a2928d3eab2343fe4a1b5) Add release notes, fix type check - [`2de3510`](https://github.com/actualbudget/actual/commit/2de35106548fc476e548b909f79b378bae4f08f9) Fix code styling ### 📊 Changes **7 files changed** (+128 additions, -4 deletions) <details> <summary>View changed files</summary> 📝 `packages/loot-core/src/platform/server/sqlite/index.electron.ts` (+5 -1) 📝 `packages/loot-core/src/platform/server/sqlite/index.web.ts` (+4 -1) ➕ `packages/loot-core/src/platform/server/sqlite/unicodeLike.test.ts` (+57 -0) ➕ `packages/loot-core/src/platform/server/sqlite/unicodeLike.ts` (+32 -0) 📝 `packages/loot-core/src/server/aql/compiler.test.ts` (+22 -0) 📝 `packages/loot-core/src/server/aql/compiler.ts` (+2 -2) ➕ `upcoming-release-notes/2903.md` (+6 -0) </details> ### 📄 Description Fixes: #2755, #2347 This PR changes the behavior of the `LIKE` SQLite queries. Instead of using the built-in implementation that can run in case-insensitive mode only for ASCII characters (and thus performs case-sensitive comparison for all other, like Cyrillic, diacritic, accents etc), the new implementation is based on JS regex that handles all characters in Unicode. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2026-04-20 21:53:46 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/actual#34775