bug 1339706 - use l10n-changesets.json for everything mobile l10n. r?pike draft
authorAki Sasaki <asasaki@mozilla.com>
Wed, 15 Feb 2017 22:00:37 -0800
changeset 485125 c76f20fc8909b4937dab54c0a21d99f1a2772e5a
parent 484806 c3a4bae5fc8db328f9f8559a65b28c235743bc10
child 485126 e5c396d3009894e8f08d0d8a1cfedb5452c3d039
push id45638
push userasasaki@mozilla.com
push dateThu, 16 Feb 2017 06:03:25 +0000
reviewerspike
bugs1339706
milestone54.0a1
bug 1339706 - use l10n-changesets.json for everything mobile l10n. r?pike MozReview-Commit-ID: Hb5pXBXriZc
mobile/android/locales/l10n.ini
mobile/locales/l10n-changesets.json
mobile/locales/l10n.ini
python/compare-locales/compare_locales/paths.py
python/compare-locales/compare_locales/util.py
--- a/mobile/android/locales/l10n.ini
+++ b/mobile/android/locales/l10n.ini
@@ -3,16 +3,16 @@
 ; file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 # Control which directories and modules are part of mobile/android.
 # Changes here should be reflected in mobile/locales/l10n.ini so
 # that the dashboard picks them up.
 
 [general]
 depth = ../../..
-all = mobile/android/locales/all-locales
+all = mobile/locales/l10n-changesets.json
 
 [compare]
 dirs = mobile mobile/android mobile/android/base
 
 [includes]
 toolkit = toolkit/locales/l10n.ini
 services_sync = services/sync/locales/l10n.ini
new file mode 100644
--- /dev/null
+++ b/mobile/locales/l10n-changesets.json
@@ -0,0 +1,170 @@
+{
+  "ar": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "ca": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "cs": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "da": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "de": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "es-AR": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "es-ES": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "et": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "eu": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "fa": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "fi": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "fr": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "fy-NL": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "ga-IE": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "gd": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "gl": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "he": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "hu": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "id": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "it": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "ja": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "ko": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "lt": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "nb-NO": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "nl": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "nn-NO": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "pa-IN": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "pl": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "pt-BR": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "pt-PT": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "ro": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "ru": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "sk": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "sl": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "sq": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "sr": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "sv-SE": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "th": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "tr": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "uk": {
+    "revision": "default",
+    "platforms": ["android"]
+  },
+  "zh-CN": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  },
+  "zh-TW": {
+    "revision": "default",
+    "platforms": ["android", "android-multilocale"]
+  }
+}
--- a/mobile/locales/l10n.ini
+++ b/mobile/locales/l10n.ini
@@ -4,16 +4,16 @@
 
 # Control which directories and modules are part of mobile
 # on the l10n dashboard.
 # Changes here should be triggered by changes in
 # mobile/android/locales/l10n.ini.
 
 [general]
 depth = ../..
-all = mobile/android/locales/all-locales
+all = mobile/locales/l10n-changesets.json
 
 [compare]
 dirs = mobile mobile/android mobile/android/base
 
 [includes]
 toolkit = toolkit/locales/l10n.ini
 services_sync = services/sync/locales/l10n.ini
--- a/python/compare-locales/compare_locales/paths.py
+++ b/python/compare-locales/compare_locales/paths.py
@@ -154,17 +154,20 @@ class L10nConfigParser(object):
         for t in self.dirsIter():
             yield t
         for child in self.children:
             for t in child.directories():
                 yield t
 
     def allLocales(self):
         """Return a list of all the locales of this project"""
-        return util.parseLocales(urlopen(self.all_url).read())
+        if urlparse(self.all_url).path.endswith(".json"):
+            return util.parseJsonLocales(urlopen(self.all_url).read())
+        else:
+            return util.parseLocales(urlopen(self.all_url).read())
 
 
 class SourceTreeConfigParser(L10nConfigParser):
     '''Subclassing L10nConfigParser to work with just the repos
     checked out next to each other instead of intermingled like
     we do for real builds.
     '''
 
--- a/python/compare-locales/compare_locales/util.py
+++ b/python/compare-locales/compare_locales/util.py
@@ -1,11 +1,15 @@
 # This Source Code Form is subject to the terms of the Mozilla Public
 # License, v. 2.0. If a copy of the MPL was not distributed with this
 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
 
 # This file is shared between compare-locales and locale-inspector
 # test_util is in compare-locales only, for the sake of easy
 # development.
+import json
 
 
 def parseLocales(content):
     return sorted(l.split()[0] for l in content.splitlines() if l)
+
+def parseJsonLocales(content):
+    return sorted(json.loads(content).keys())