internetarchive / internetarchive/openlibrary

Edition table filter doesn't correctly do diacritic folding

Open
#10,927 3 comments 0 reactions 0 assignees View on GitHub
Lead: @cdrini Module: Books Page Needs: Breakdown Priority: 3 Type: Bug
Dominant language
Python
Stars
6.7k
Forks
2k
Avg merge
2d 14h
Merged PRs (30d)
126

Description

### Problem

As stated in title

Search "germenes"
![Image](https://github.com/user-attachments/assets/62e165fe-9d29-4214-b962-3e21876de461)

Search "gérmenes"
![Image](https://github.com/user-attachments/assets/e36841ea-fea5-4656-bb0f-50ce0dc719d9)

### Reproducing the bug

1. Go to https://openlibrary.org/works/OL276558W
2. Click "Afficher les 58 éditions"
3. Type "armas" in the Search field
4. Note the 15 editions and their titles
5. Replace "armas" with "germenes" and note how the the list changes to just 6 editions
6. Replace "germenes" with "gérmenes" and note that the list now consists of 8 different editions

* Expected behavior: Both search terms match the same set of 14 diacritic folded titles
* Actual behavior: Titles have to match exactly (probably including Unicode normalizatin form, I suspect)

### Context

- Browser (Chrome, Safari, Firefox, etc): Chrome
- OS (Windows, Mac, etc): Mac
- Logged in (Y/N): Y
- Environment (prod, dev, local): prod

### Breakdown

#### Requirements Checklist
* [ ]

#### Related files

*

#### Stakeholders

*


#### Instructions for Contributors

- Please [run these commands](https://github.com/internetarchive/openlibrary/wiki/Git-Cheat-Sheet#working-on-your-branch) to ensure your repository is up to date **before** [creating a new branch](https://github.com/internetarchive/openlibrary/wiki/Git-Cheat-Sheet#making-changes-and-creating-a-pull-request) to work on this issue and **each time after** pushing code to Github, because the pre-commit bot may add commits to your PRs upstream.

Contributor guide

Open the contributing guide

Research direction

Start with the reproduction on the work's edition table and trace the implementation of its Search field and title matching. Confirm the behavior with both “germenes” and “gérmenes”; done means both terms return the same 14 diacritic-folded titles.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
frontend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.