Curieusement, PostgreSQL échoue également ici :
[2] pry(main)> DB.query_single('select lower(?)', 'ΣΠΥΡΟΣ')
=> ["σπυροσ"]
Peut-être devrions-nous simplement traiter ce cas particulier dans notre méthode interne Discourse qui gère le calcul de username_lower ?
Trouvez toutes les méthodes qui appellent username_lower, redirigez-les vers une fonction centrale, puis permettez ce cas particulier (je suppose que nous pouvons utiliser un appel à mini_racer si nous le souhaitons, ou simplement appeler .lower et le corriger ensuite avec un appel à sub).
Je mets à jour le titre de l’OP ici pour plus de clarté.