Hi,

Please see my latest comment on this ticket:
https://code.djangoproject.com/ticket/30439#comment:27

I would like to suggest, since I understand the problem is per locale, and
I'm only familiar with the Hebrew (he) locale: Can you revert
https://github.com/django/django/blob/master/django/contrib/auth/locale/he/LC_MESSAGES/django.po
in
Django 2.2 to use the plurals as they were defined in Django 2.1 (
https://github.com/django/django/blob/stable/2.1.x/django/contrib/auth/locale/he/LC_MESSAGES/django.po:
 "Plural-Forms:
nplurals=2; plural=(n != 1);\n")? I checked the file and there are only 2
cases of msgstr[2] and msgstr[3] there, which are both identical
to msgstr[1]. Will it break things in Hebrew? Will it break things in other
locales? If people using other locales will ask, you can do similar things
there too (if things are broken there in a similar way). I understand in
some languages things were not broken like this in Django 2.2 (or other
versions), and they used more plural forms there even before, so you don't
have to change anything there. And in Django 3.0 (or whichever version you
choose) you can make the .po files independent so they will not depend on
each other, and the first .po file loaded will not influence the rest of
the files.

If you can revert such a change which was made, maybe even by mistake, in
Django 2.2 and then fix the problem in Django 3.0 it may help not only
Speedy Net but possibly anyone using Django with the Hebrew locale. You
might not have made a deliberate decision to change Hebrew translation in
Django 2.2, but it was changed from the change in the .po file from
Transifex. But you (the Django developers) can make a deliberate decision
to fix it. Or alternatively, if you fix the problem in Django 3.0 (or even
3.1 or 3.2) I might upgrade Speedy Net directly from 2.1 to 3.0 etc.
without using 2.2 at all. But since 2.2 is an LTS version, I think you
should make an effort to make it work, and therefore revert the
plural-forms definition to the one used by Django 2.1. At least in Hebrew,
but maybe in any language where it has changed.

You might not have noticed this issue before because there are not many
websites using these languages with Django, however for these websites this
is a serious bug. I'm waiting for any solution to this problem before I
upgrade to any Django version beyond 2.1. I even thought about forking
Django and reverting this definition myself, but I prefer if Django itself
will do it then for me forking Django. If I work Django I might not be able
to apply all the changes you make in future releases, including security
issues which might arise.

Have you found any .po file of Django, in Hebrew, where the third and
fourth strings are not identical to the second one? I'm currently not
familiar with such a .po translation.

אורי
u...@speedy.net


On Sun, Nov 24, 2019 at 2:50 AM Tobias McNulty <tob...@caktusgroup.com>
wrote:

> ‪On Sat, Nov 23, 2019 at 9:17 AM ‫אורי‬‎ <u...@speedy.net> wrote:‬
>
>> By the way, I read here that this bug it the fault of Transifex (not
>> Django). I'm not sure what that means, it worked in Django 2.1. Someone
>> made a decision to change something in Django 2.2, how can it be Transifex?
>> It must be a decision of the Django developers. If Transifex has bugs, why
>> not use a previous version which worked? As far as I would suggest, I would
>> postpone using the 4-strings translation (or up to 6 strings in some
>> languages) to Django 5.0 or 10.0. Is it really that important to break all
>> the 2-strings translations which worked?
>>
>
> As far as I understand, the issue is the translations that are pulled in
> from Transifex (it's not a version of Transifex that we can control). I
> would hazard a guess that the same issue would occur with Django 2.1 if the
> translations were updated; i.e., it's simply a matter of timing that it
> happened to break with Django 2.2.
>
> There is some sample code in the ticket which might be good to try, to see
> if it fixes the issue for you:
> https://code.djangoproject.com/ticket/30439#comment:7
>
> Cheers,
>
>
> *Tobias McNulty*Chief Executive Officer
>
> tob...@caktusgroup.com
> www.caktusgroup.com
>
> --
> You received this message because you are subscribed to the Google Groups
> "Django developers (Contributions to Django itself)" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to django-developers+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/django-developers/CAMGFDKTM_uhYYC7R7oaADfK%3D_4kaMNjH5U8FQ1q%3DYVdutzpwEg%40mail.gmail.com
> <https://groups.google.com/d/msgid/django-developers/CAMGFDKTM_uhYYC7R7oaADfK%3D_4kaMNjH5U8FQ1q%3DYVdutzpwEg%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers  (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-developers+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-developers/CABD5YeHu%3Dvf9HJZHDdSVFAf0V1XoEh-YX32SsR5ndq3v-SJ9zg%40mail.gmail.com.

Reply via email to