#36642: makemessages provides invalid locale suggestions when attempting to 
format
the locale string
--------------------------+-----------------------------------------
     Reporter:  ontowhee  |                     Type:  Uncategorized
       Status:  new       |                Component:  Uncategorized
      Version:  5.2       |                 Severity:  Normal
     Keywords:            |             Triage Stage:  Unreviewed
    Has patch:  0         |      Needs documentation:  0
  Needs tests:  0         |  Patch needs improvement:  0
Easy pickings:  0         |                    UI/UX:  0
--------------------------+-----------------------------------------
 This bug is reported by the forum user "hfl" in
 https://forum.djangoproject.com/t/invalid-locale-zh-hans-did-you-mean-zh-
 hans/42829.

 When an invalid locale is provided, makemessages will provide a suggested
 valid locale. However, some locales are displayed with incorrect
 capitalizations, because there is an attempt to parse and capitalize a
 territory component in [lines
 
431-438](https://github.com/django/django/blob/main/django/core/management/commands/makemessages.py#L431-L438).
 Not all locales contain a territory component.

 The example from the forum post is,

 {{{
 $ python manage.py makemessages zh-hans
 invalid locale zh-hans, did you mean zh_HAns?
 }}}

 where `zh-hans` is an invalid input, and the suggested locale `zh_HAns` is
 also invalid. The correct suggestion should be `zh_Hans`.

 I'm not familiar with translations, but I wonder if it would help to use a
 dictionary lookup of the locales (with the keys as the locales in all
 lowercase, and the values the actual locale with correct casing), instead
 of relying on regular expressions to validate the locale in
 `is_valid_locale()` and to format the locale.
-- 
Ticket URL: <https://code.djangoproject.com/ticket/36642>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/django-updates/01070199bac44615-04adffdc-8086-47a0-9546-45f6af1ef0a1-000000%40eu-central-1.amazonses.com.

Reply via email to