checklist.py
5.91 KB
-
Translate string iff non-empty · 3fdfdbcd
This resolves an issue where a checklist's long_description being empty caused gettext to dump PO file headers. I had originally made this change to the Stanford-Online/edx-platform repository a few weeks ago [0] to address a failing test on our fork. I didn't take the time to diagnose the root issue; I just fixed it for the single case. After stumbling across the issue elsewhere, @kluo <kevkluo@gmail.com> followed through and tracked down the cause of the behavior. It turns out that `gettext`, by default, translates the empty string into PO file headers; this is apparently a feature, not a bug [1]. This behavior seems counterintuitive; for our use, it seems that translating an empty string should simply return an empty string. We already program defensively around this in platform code [2], but it'd be convenient to resolve this with a centralized solution, instead of a patchwork of fixes. [0] 4b88f54a [1] http://stackoverflow.com/questions/18459387/translation-of-empty-string-shows-po-header [2] https://github.com/edx/edx-platform/blob/master/cms/djangoapps/contentstore/views/checklist.py#L140
stv committed