Moodle
  1. Moodle
  2. MDL-26914

Moodle does not download grand-parent language packs automatically

    Details

    • Difficulty:
      Easy
    • Affected Branches:
      MOODLE_20_STABLE
    • Fixed Branches:
      MOODLE_21_STABLE
    • Rank:
      16646

      Description

      Steps to reproduce:

      1. Go to the Site administration ► Language ► Language packs
      2. Make sure you have no Deutsch (de*) lang pack installed
      3. Install "Deutsch - Kids (de_kids)"

      Expected result:
      de_kids is installed, de_du is installed (as a parent) and de is installed, too (as a parent of de_du)

      Actual result:
      only de_kids and de_du is installed. The installer does not check for "parents of parents".

        Issue Links

          Activity

          Hide
          David Mudrak added a comment -

          A patch that fixes this has been submitted for the next week integration. See the linked PULL request for details.

          Show
          David Mudrak added a comment - A patch that fixes this has been submitted for the next week integration. See the linked PULL request for details.
          Hide
          Ralf Krause added a comment -

          Nice ... so I have to wait until next week. Thanks!

          Show
          Ralf Krause added a comment - Nice ... so I have to wait until next week. Thanks!
          Hide
          David Mudrak added a comment -

          I re-triaged this today and set the fix version to 2.1 instead of 2.0.3 for the following reasons:

          • The proper solution of this requires non-trivial changes in the code (introducing a new lang installer instead of fixing the same pattern at several places). That is too much the stable branch and must go to master
          • The bug is not critical at all. Note that if the admin selects just "de_kids" to be installed, de_du is installed automatically and there is a warning automatically displayed that "de" is missing. Having to install parent languages manually had been de-facto standard in Moodle for a long time.
          Show
          David Mudrak added a comment - I re-triaged this today and set the fix version to 2.1 instead of 2.0.3 for the following reasons: The proper solution of this requires non-trivial changes in the code (introducing a new lang installer instead of fixing the same pattern at several places). That is too much the stable branch and must go to master The bug is not critical at all. Note that if the admin selects just "de_kids" to be installed, de_du is installed automatically and there is a warning automatically displayed that "de" is missing. Having to install parent languages manually had been de-facto standard in Moodle for a long time.
          Hide
          David Mudrak added a comment -

          PULL-571 created for Moodle 2.1. Deutsch admins should be warned that they should not choose de_kids as a language of the installation of the new 2.0 servers (not considered as a big problem as the missing language pack is easily spottable after the installation). From 2.1, it will work correctly though.

          Show
          David Mudrak added a comment - PULL-571 created for Moodle 2.1. Deutsch admins should be warned that they should not choose de_kids as a language of the installation of the new 2.0 servers (not considered as a big problem as the missing language pack is easily spottable after the installation). From 2.1, it will work correctly though.
          Hide
          David Mudrak added a comment -

          INSTRUCTIONS FOR TESTING (difficulty: moderate, requires controlled installation and upgrade, requires using CLI utilities)

          1. For each of the three installer types (install.php, admin/cli/install.php, admin/cli/install_database.php) try to install a fresh new Moodle from integration.git, using "Deutsch - Kids (de_kids)" as the language (note there is no need to actually install Moodle - you can stop at the moment where the lang packs are downloaded)
          2. TEST: make sure that in all cases, moodledata/lang/ contains all three de_kids, de_du and de packs
          3. Install a fresh new Moodle from integration.git, using the English language
          4. Go to Site administration > Language > Language packs
          5. Select "Deutsch - Kids (de_kids)" and install it
          6. TEST: make sure that de_kids is installed, de_du is installed (as a parent) and de is installed, too (as a parent of de_du)

          Show
          David Mudrak added a comment - INSTRUCTIONS FOR TESTING (difficulty: moderate, requires controlled installation and upgrade, requires using CLI utilities) 1. For each of the three installer types (install.php, admin/cli/install.php, admin/cli/install_database.php) try to install a fresh new Moodle from integration.git, using "Deutsch - Kids (de_kids)" as the language (note there is no need to actually install Moodle - you can stop at the moment where the lang packs are downloaded) 2. TEST: make sure that in all cases, moodledata/lang/ contains all three de_kids, de_du and de packs 3. Install a fresh new Moodle from integration.git, using the English language 4. Go to Site administration > Language > Language packs 5. Select "Deutsch - Kids (de_kids)" and install it 6. TEST: make sure that de_kids is installed, de_du is installed (as a parent) and de is installed, too (as a parent of de_du)
          Hide
          Helen Foster added a comment -

          Good work, thanks David

          Show
          Helen Foster added a comment - Good work, thanks David
          Hide
          Ralf Krause added a comment -

          When does this work in stable Moodle 2.0?

          The version Moodle 2.0.2+ (20110406) still has the problem and does not load Deutsch (de) when I delete all german packages and try to install only Deutsch - Kids (de_kids). Moodle automaticly loads Deutsch - du (de_du) but not the main package.

          Ralf

          Show
          Ralf Krause added a comment - When does this work in stable Moodle 2.0? The version Moodle 2.0.2+ (20110406) still has the problem and does not load Deutsch (de) when I delete all german packages and try to install only Deutsch - Kids (de_kids). Moodle automaticly loads Deutsch - du (de_du) but not the main package. Ralf
          Hide
          Ralf Krause added a comment -

          Or does it work only in Moodle 2.1?

          Show
          Ralf Krause added a comment - Or does it work only in Moodle 2.1?
          Hide
          David Mudrak added a comment -

          Yes Ralf, this was fixed for Moodle 2.1 and is not planned to be backported. See my previous comment. Note that admins are at least warned that the main lang pack is missing.

          Show
          David Mudrak added a comment - Yes Ralf, this was fixed for Moodle 2.1 and is not planned to be backported. See my previous comment. Note that admins are at least warned that the main lang pack is missing.
          Hide
          Ralf Krause added a comment -

          Hi David, yes it works with Moodle 2.1dev. I installed it today into my Moodle4Mac. Thanks!

          Show
          Ralf Krause added a comment - Hi David, yes it works with Moodle 2.1dev. I installed it today into my Moodle4Mac. Thanks!

            People

            • Votes:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: