Closed Bug 1427398 Opened 6 years ago Closed 6 years ago

building language packs shouldn't require all l10n changesets to be already public

Categories

(Core :: Internationalization, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla59
Tracking Status
firefox58 --- wontfix
firefox59 --- fixed

People

(Reporter: aryx, Assigned: aryx)

References

Details

Attachments

(1 file)

Creating a language pack http://developer.mozilla.org/en/docs/Creating_a_Language_Pack fails if the latest changeset is not yet public (e.g. local locale testing before pushing it). E.g. |mozmake langpack-de LOCALE_MERGEDIR=$(PWD)/mergedir| fails with:

c:/Mozilla/Coding/Code/objdir-firefox-beta/_virtualenv/Scripts/python.exe -m mozbuild.action.langpack_manifest --locales de --min-app-ver 58.0 --max-app-ver 58.* --app-name "Nightly" --l10n-basedir "c:/Mozilla/Coding/Code/l10n-beta" --defines c:/Mozilla/Coding/Code/l10n-beta/de/toolkit/defines.inc c:/Mozilla/Coding/Code/l10n-beta/de/browser/defines.inc  --input ../../dist/xpi-stage/locale-de
Traceback (most recent call last):
  File "c:\Mozilla\Coding\Buildtools\MozillaBuild\python\Lib\runpy.py", line 174, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "c:\Mozilla\Coding\Buildtools\MozillaBuild\python\Lib\runpy.py", line 72, in _run_code
    exec code in run_globals
  File "c:\Mozilla\Coding\Code\mozilla-beta\python\mozbuild\mozbuild\action\langpack_manifest.py", line 448, in <module>
    main(sys.argv[1:])
  File "c:\Mozilla\Coding\Code\mozilla-beta\python\mozbuild\mozbuild\action\langpack_manifest.py", line 442, in main
    chrome_entries
  File "c:\Mozilla\Coding\Code\mozilla-beta\python\mozbuild\mozbuild\action\langpack_manifest.py", line 403, in create_webmanifest
    'version': get_timestamp_for_locale(os.path.join(l10n_basedir, loc)),
  File "c:\Mozilla\Coding\Code\mozilla-beta\python\mozbuild\mozbuild\action\langpack_manifest.py", line 96, in get_timestamp_for_locale
    dt = get_dt_from_hg(path)
  File "c:\Mozilla\Coding\Code\mozilla-beta\python\mozbuild\mozbuild\action\langpack_manifest.py", line 70, in get_dt_from_hg
    date = data['pushdate'][0]
TypeError: string indices must be integers
mozmake: *** [c:/Mozilla/Coding/Code/mozilla-beta/toolkit/locales/l10n.mk:219: langpack-de] Error 1

This fails because langpack_manifest.py tries to fetch the push timestamp from the server but the changeset is unknown if it only exists locally.
Thanks for picking this up :aryx! I like the patch!
Comment on attachment 8939123 [details]
Bug 1427398 - building language packs shouldn't require all l10n changesets to be already public.

https://reviewboard.mozilla.org/r/209542/#review216816

TIL about another consumer of pushlog data!
Attachment #8939123 - Flags: review?(gps) → review+
Pushed by gszorc@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/39ccd499bea6
building language packs shouldn't require all l10n changesets to be already public. r=gps
https://hg.mozilla.org/mozilla-central/rev/39ccd499bea6
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla59
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: