fieldmapper changes break with translations

Bug #1686832 reported by Ben Shum on 2017-04-27
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Evergreen
Medium
Unassigned

Bug Description

Evergreen master

With recent fieldmapper changes to master, we've noticed that if one were to also build/install translations via "make LOCALE=es-ES install" or similar, this results in a broken Evergreen install where the built fieldmapper file fm_IDL.xml is missing the newest changes.

For example, when bug 1599634 was merged to add a new fieldmapper source "action.all_circulation_combined_types" (aacct), we did not run the update for i18n PO template sync, and later installation resulted in a generated fm_IDL.xml that does not include the new fieldmapper entry.

Then when trying to use the Evergreen web client, you get a nonfunctioning login window. Checking the logs, I get an error logged like:

parser error : Entity 'class.aacct.label' not defined

Outlining how this works now:

- during i18n PO template sync, we take fm_IDL.xml and pull out values for fm_IDL.dtd to become part of the PO templates for translation purposes.
- later on, during i18n install, the script creates an entity-ized fm_IDL.xml using the .dtd template file. This one gets installed at /openils/var/web/reporter/.

So either we need to make sure to run PO template sync every time we make alterations to the fieldmapper, to avoid issues with generating the output fm_IDL.xml for translations purposes. Or we need to add some protection in the fieldmapper.py script used to create the file to fall back in the event the PO template has not been updated yet.

Reporting issue for now, still investigating and coming up with ideas on how to solve this.

Ben Shum (bshum) on 2017-04-27
tags: added: i18n
Changed in evergreen:
status: New → Triaged
importance: Undecided → Medium
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers