Wagtail: рдмрджрд╕реВрд░рдд рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдкрджрд╛рд╡рдирдд рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 18 рдлрд╝рд░ре░ 2020  ┬╖  5рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: wagtail/wagtail

рд╕рд╛рд░рд╛рдВрд╢ рдЬрд╛рд░реА рдХрд░реЛ

ugettext(), ugettext_lazy(), ugettext_noop(), ungettext() рдФрд░ ungettext_lazy() django.utils.translation рд╕реЗ рдХрд┐рд╕реА рднреА рдХрд╛рд░реНрдп рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рдкрд░ RemovedInDjango40Warning рдкреНрд░рддрд┐рдирд┐рдпреБрдХреНрддрд┐ рдЪреЗрддрд╛рд╡рдиреА рдмрдврд╝ рдЬрд╛рдПрдЧреАред

рдкреНрд░рдЬрдирди рдХрд░рдиреЗ рдХрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛

  1. Django 3.0 рд╕реНрдерд╛рдкрд┐рдд рдХреЗ рд╕рд╛рде рдПрдХ рд╡реИрдЧреЗрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рд╕рдХреНрд╖рдо рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд╡рд┐рдХрд╛рд╕ рд╕рд░реНрд╡рд░ рд╢реБрд░реВ рдХрд░реЗрдВ: python -Wall manage.py runserver
  2. рдЖрдЙрдЯрдкреБрдЯ рдХрд╛ рдирд┐рд░реАрдХреНрд╖рдг рдХрд░реЗрдВред рдпрд╣ рдПрдХ рдХреЗ рд╕рдорд╛рди рджрд░реНрдЬрдиреЛрдВ рдЪреЗрддрд╛рд╡рдиреА рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░реЗрдЧрд╛:
/Users/stormh/torchbox/wagtail/wagtail/admin/edit_handlers.py:762: RemovedInDjango40Warning: django.utils.translation.ugettext_lazy() is deprecated in favor of django.utils.translation.gettext_lazy().
  'heading': ugettext_lazy('Scheduled publishing'),
  • рдореИрдВрдиреЗ рдкреБрд╖реНрдЯрд┐ рдХреА рд╣реИ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдирдП рд╕рд┐рд░реЗ рд╕реЗ рд╡реИрдЧреЗрдЯ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд░ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: рд╣рд╛рдБ

Django 3.0 рдореЗрдВ ugettext рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдкрджрд╛рд╡рдирдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ

рдкрджрд╛рд╡рдирддрд┐ рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ рдпреЗ рдЕрдкрдиреЗ рд╕рдВрдмрдВрдзрд┐рдд gettext рд╕рдордХрдХреНрд╖реЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рд░рд╛рд╕рдд рдЙрдкрдирд╛рдо рд╣реИрдВред рд╡реЗ рдПрдХ рдмрд╛рд░ рдЗрд╕ рдЯрд┐рдХрдЯ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдкрд╛рдпрдерди 2.7 рдХреЗ рд╕рд╛рде рдпреВрдирд┐рдХреЛрдб рд╕рдВрдЧрддрддрд╛ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдереЗ

рд╣рдо рдЗрд╕реЗ рдХреИрд╕реЗ рд╣рд▓ рдХрд░реЗрдВрдЧреЗ?

рд╣рдореЗрдВ рдЙрдирдХреЗ gettext рд╕рдордХрдХреНрд╖реЛрдВ рдХреЗ рд╕рд╛рде рд╕рднреА рд╕рдВрджрд░реНрднреЛрдВ рдХреЛ ugettext рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдХрд╛ рдХреЛрдИ рдирдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рднрд╛рд╡ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рд╡реИрдЧрдЯреЗрд▓ рдЕрдм рдкрд╛рдпрдерди 2.7 рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдкрд░рд┐рд╡рд░реНрддрди Django 2.2 LTS рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рд╣реЛрдЧрд╛ред

рдЕрдм, рдХреНрдпрд╛ рд╣рдореЗрдВ рдЗрд╕ рдмрджрд▓рд╛рд╡ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЬрд▓реНрджреА рд╣реИ? рдирд╣реАрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВред Django 4.0 рдореЗрдВ ugettext рдлрд╝рдВрдХреНрд╢рдВрд╕ рдирд┐рдХрд╛рд▓реЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╣реИрдВред рдпрд╣ 2022 рдореЗрдВ рдЬрд╛рд░реА рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рд╣реИ, рдЗрд╕ рдЪрд╛рд░реНрдЯ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдореИрдВрдиреЗ https://www.djangoproject.com/download/ рд╕реЗ рд▓рд┐рдпрд╛ рдерд╛

рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛-рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдк-рдЯреВ-рдбреЗрдЯ рдЕрдиреБрднрд╡ however рдХреЗ рд▓рд┐рдП рдЙрди рдмреБрд░рд╛ рдкрджрд╛рд╡рдирддрд┐ рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдПрдВред

рддрдХрдиреАрдХреА рдЬрд╛рдирдХрд╛рд░реА

  • рдкрд╛рдпрдерди рд╕рдВрд╕реНрдХрд░рдг: 3.8.1
  • Django рд╕рдВрд╕реНрдХрд░рдг: 3.0.3
  • рд╡реИрдЧреЗрдЯ рд╕рдВрд╕реНрдХрд░рдг: 2.9a0
  • рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕рдВрд╕реНрдХрд░рдг: n / a
Django i18n good first issue Bug

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

@danihodovic рдЖрдкрдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рд╣реИ рдХрд┐ рдХреИрд╕реЗ рдЖрдк рдЙрдиреНрд╣реЗрдВ pytest рдЪрд▓рд╛рддреЗ рд╕рдордп рдЫрд┐рдкрд╛рддреЗ рд╣реИрдВред

[pytest]
filterwarnings =
    ignore::django.utils.deprecation.RemovedInDjango40Warning

рд╕рднреА 5 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдХреНрдпрд╛ рдЗрд╕ рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рд╢рд╛рдВрдд рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рдпрд╣ рд╣рд▓ рди рд╣реЛ рдЬрд╛рдП?

@danihodovic рдЖрдкрдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рд╣реИ рдХрд┐ рдХреИрд╕реЗ рдЖрдк рдЙрдиреНрд╣реЗрдВ pytest рдЪрд▓рд╛рддреЗ рд╕рдордп рдЫрд┐рдкрд╛рддреЗ рд╣реИрдВред

[pytest]
filterwarnings =
    ignore::django.utils.deprecation.RemovedInDjango40Warning

рд╢реБрдХреНрд░рд┐рдпрд╛ @ рдорд░реНрдЯрд┐рди !

# 5907 рдореЗрдВ рдкреВрд░рд╛ рд╣реБрдЖ, рд▓реЗрдХрд┐рди рдЪреВрдВрдХрд┐ рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдореМрдЬреВрджрд╛ рдкреАрдЖрд░ рдХреЗ рд╡рд┐рд▓рдп рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдирдИ рдШрдЯрдирд╛рдПрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ, рдореИрдВ 2.9 рд░рд┐рд▓реАрдЬ рд╕реЗ рдкрд╣рд▓реЗ рдПрдХ рдФрд░ рд╕реНрд╡реАрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдпрд╛рдж рджрд┐рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЦреБрд▓рд╛ рдЫреЛрдбрд╝ рджреВрдВрдЧрд╛ред

рдкреБрдирдГ рдЬрд╛рдБрдЪ рдХреА рдЧрдИ, рдФрд░ рдХреЛрдИ рдирдИ рдШрдЯрдирд╛ рд╕рд╛рдордиреЗ рдирд╣реАрдВ рдЖрдИ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рд╕рднреА рдЕрдЪреНрдЫреЗ рд╣реИрдВ

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

gasman picture gasman  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

brylie picture brylie  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ocobacho picture ocobacho  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

soar picture soar  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

lboaretto picture lboaretto  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ