Compression DB punctuation-insensitive search changes with query capitalization
Maintainer antworten meist innerhalb von 3 Tagen
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 82/100
Rechercherichtung
Lies CompactGUI/ViewModels/DatabaseViewModel.vb, insbesondere die Zeilen 63–79 und die Methode FilterResults. Vergleiche die Umwandlung in Kleinbuchstaben mit der case-sensitiven Contains-Prüfung und überprüfe anschließend die A/B/A-Reproduktion mit counterstrike, CounterStrike und erneut counterstrike. Erledigt ist die Änderung, wenn die Groß- und Kleinschreibung keine Auswirkungen mehr auf treffer ohne Berücksichtigung der Interpunktion hat.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Tested on official v4.0.0-beta.12, Windows 11 25H2 (26200.9711), ASUS Vivobook S 15 / Snapdragon X Elite X1E-78-100 / 16 GB RAM, .NET 10.0.13. Both the native ARM64 application and the official x64 application were tested directly on this ARM laptop. Additional component checks used unchanged libraries extracted from the x64 release, with the release's embedded manifest. No Intel/AMD PC was tested. Only disposable files were used. Most testing was automated with Codex, with human assistance identified where applicable. Related build request: #556.
Reproduction
In Compression DB, search counterstrike, then CounterStrike, then counterstrike again.
The lowercase query finds Counter-Strike and related hyphenated titles. Changing only capitalization drops those matches, leaving a Command & Conquer title containing literal unhyphenated Counterstrike. Switching back restores the Counter-Strike results. The A/B/A sequence was repeated.
Expected: changing query capitalization should not change those punctuation-insensitive matches.
DatabaseViewModel.vb lines 63–79 normalizes the game name to lowercase but compares it to the unnormalized SearchText using case-sensitive Contains. A separate literal comparison is case-insensitive, explaining the remaining result.
Normalizing both sides of the normalized comparison should address this. The x64 comparison below also reproduces the filtering defect.
x64 component comparison (21 October 2026)
The actual x64 release's DatabaseViewModel.FilterResults method was called with synthetic objects bearing these public game titles. The A/B/A results were:
| Query | Counter-Strike |
Command & Conquer: Red Alert - Counterstrike |
|---|---|---|
counterstrike |
matched | matched |
CounterStrike |
not matched | matched |
counterstrike again |
matched | matched |
This component result does not depend on fetching a live database.
Direct x64 GUI follow-up (21 October 2026)
The same A/B/A sequence was then entered into the official x64 Compression DB page using its loaded database. Lowercase counterstrike showed Counter-Strike and related hyphenated titles; CounterStrike removed those matches and left the Command & Conquer title with literal Counterstrike; returning to lowercase restored the results. This directly confirms the reported search behavior in both release GUIs.
- Vorherrschende Sprache
- Visual Basic .NET
- Sterne
- 8.9k
- Forks
- 343
- Ø Merge
- 3 T. 18 Std.
- Gemergte PRs (30 T.)
- 7
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus IridiumIO/CompactGUI
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
IridiumIO/CompactGUI#699 ·
Maintainer antworten meist innerhalb von 3 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
IridiumIO/CompactGUI#696 ·
Maintainer antworten meist innerhalb von 3 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
IridiumIO/CompactGUI#680 ·
Maintainer antworten meist innerhalb von 3 Tagen
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 48/100
IridiumIO/CompactGUI#700 ·
Maintainer antworten meist innerhalb von 3 Tagen
-
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 58/100
IridiumIO/CompactGUI#698 ·
Maintainer antworten meist innerhalb von 3 Tagen
Alle Issues in IridiumIO/CompactGUI
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
Maintainer antworten meist innerhalb von 1 Tag
-
area: library data-loss tier: p0 type: bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Maintainer antworten meist innerhalb von 1 Tag
-
priority: low
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 64/100
storytold/photocraft#8687 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 2 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
electron-userland/electron-builder#10395 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
Maintainer antworten meist innerhalb von 1 Tag