Seed data for new installations is not translated
Overview
When installing a new CiviCRM site, the installer loads seed data from the files civicrm_data.*.mysql
. The seed data is normally translated, producing a series of localized files (civicrm_data.fr_FR.mysql
, civicrm_data.de_DE.mysql
, etc). This is not working.
Reproduction steps
Either:
- Download
https://download.civicrm.org/civicrm-5.21.1-l10n.tar.gz
. Observe that the data files for different locales are identical. Inspect either of these files and observe that English strings are present.$ md5sum civicrm/sql/civicrm_data.en_GB.mysql civicrm/sql/civicrm_data.fr_FR.mysql 5636dec8be4443675e3a07b6b198329f civicrm/sql/civicrm_data.en_GB.mysql 5636dec8be4443675e3a07b6b198329f civicrm/sql/civicrm_data.fr_FR.mysql
- Setup a local dev site and run
./bin/setup.sh -g
. Then compare the resulting SQL files. (Tip: You can run this faster by limiting the number of active languages - e.g. setCIVICRM_LOCALES=en_US,fr_FR
.
Current behaviour
The files are identical - containing only English strings.
Expected behaviour
Each file should have suitably translated strings.
Comments
bgm noticed that the published files for 5.19 were valid - but they broke in 5.20. Local testing confirms that the following series of commits are responsible. Reverting them on 5.20 restores translation.
git log origin/5.19..origin/5.20 CRM/Core/I18n.php