Template 500 Error on Burmese Language

I am getting the following error on the case list when the interface is in Burmese

I, [2020-12-18T10:40:20.351779 #26695]  INFO -- : Completed 500 Internal Server Error in 47ms
F, [2020-12-18T10:40:20.352985 #26695] FATAL -- :   
F, [2020-12-18T10:40:20.353048 #26695] FATAL -- : ActionView::Template::Error (translation data {:other=>"အမှုဖြစ်ရပ်များ"} can not be used with :count => 1. key 'one' is missing.):
F, [2020-12-18T10:40:20.353282 #26695] FATAL -- :     20:       <div class="row collapse align-middle">
    21:         <div class="large-6 small-6 columns">
    22:           <div class="pagination_info">
    23:             <%= page_entries_info collection %> <%= t('case.id_search_results_html', id: params[:query]).html_safe if params[:id_search].present? && params[:query].present? %>
    24:           </div>
    25:         </div>
    26:         <div class="large-6 small-6 columns">
F, [2020-12-18T10:40:20.353332 #26695] FATAL -- :   
F, [2020-12-18T10:40:20.353359 #26695] FATAL -- : app/views/record_shared/_list_view_table.html.erb:23:in `_app_views_record_shared__list_view_table_html_erb___1355343080547388550_55200160'
app/views/children/index.html.erb:29:in `_app_views_children_index_html_erb__2644617171604940136_55300240'
app/controllers/application_controller.rb:175:in `block in with_timezone'
app/controllers/application_controller.rb:175:in `with_timezone'
I, [2020-12-18T10:40:20.354166 #26695]  INFO -- : Processing by ErrorsController#internal_server_error as HTML


I wonder if we could take a little time to appreciate the error message key 'one' is missing.):

Specifically the accidental ):

If anyone arrives here with a similar error the problem was missing translations. The original was this

  other: "<span>%{case_worker}</span>တွင် %{stat}လွှဲပြောင်းညွှန်းပို့ခြင်း<span>စုစုပေါင်း</span>"
  other: "နှင့် %{stat} လွှဲပြောင်းညွှန်းပို့မှုများ  <span>အသစ်</span>"
  other: "<span>%{case_worker}</span>ရှိသည် %{stat}ဖြစ်ရပ် <span>စုစုပေါင်း</span>"
  other: "သင့်ထံတွင် %{stat}ဖြစ်ရပ်များ <span>ဖွင့်လှစ်</span>"
  other: "နှင့် %{stat}ဖြစ်ရပ် <span>ပိတ်သိမ်းပြီး</span>"
  other: "သင့်ထံတွင် %{stat}လွဲပြောင်းပေးမှု‌‌ပေါင်း <span>%{stat_type}</span>"

and these are all missing the one key:

one: "<span>%{case_worker} has %{stat} <span>total referral "
other: "<span>%{case_worker} has %{stat} <span>total referrals "
one: "and %{stat} <span>new referrals"
other: "and %{stat} <span>new referrals"
one: "<span>%{case_worker} has %{stat} <span>total case "
other: "<span>%{case_worker} has %{stat} <span>total cases "
one: "You have %{stat} <span>open case "
other: "You have %{stat} <span>open cases "
one: "and %{stat} <span>closed case "
other: "and %{stat} <span>closed cases "
one: "You have %{stat} <span>%{stat_type} Transfer "
other: "You have %{stat} <span>%{stat_type} Transfers "```

manually adding these by hand solved this issue

Trying to debug why this was happening I found this in the Transifex docs

‘When Transifex encounters a pluralized entry in your file, it’ll associate all the plural forms together. This way, Transifex can present the translator with all the formals in the Editor. At the same time, Transifex knows how many plural forms each language has and asks the translator to translate all of them.’

The part in bold was suspicious so digging deeper it seems Transifex automatically identifies the number of plural forms for each specific language following the Unicode CLDR rules, So, according to these rules (Cardinal type), Burmese has only 1 form (other).


The ‘one’ is therefore silently dropped