silverstripe-framework: Line breaks and empty lines in yml translation files break page

Hej there.

When I updated to 3.4.1 my italian version of the website broke.

The given error was:

[User Error] Uncaught InvalidArgumentException: Unable to parse string: Malformed inline YAML string (').
GET /it?flushtoken=b111121b459990200540cc410dbd2225&flush=1
Line 100 in /Users/knsqnt/Projects/usedsoft-website/public/framework/thirdparty/zend_translate_railsyaml/library/Translate/Adapter/thirdparty/sfYaml/lib/sfYaml.php

The .yml file (/framework/lang/it.yml) seems to be valid, but after a while I found out, that the parser has some problems with empty lines and linke breaks inside an entry, like here:

Help2: '<div class="advanced">

      <h4>Utilizzo avanzato</h4>

      <ul>

      <li>Colonne consentite: <em>%s</em></li>

      <li>Gruppi esistenti sono individuati attraverso la proprietà univoca <em>Code</em> e aggiornati con i nuovi valori dal file importato.</li>

      <li>Possono essere create gerarchie usando la colonna <em>ParentCode</em></li>

      <li>Codici di autorizzazione possono essere assegnati con la colonna <em>PermissionCode</em>. I codici di autorizzazione preesistenti non saranno cancellati.</li>

      </ul>

      </div>'

So when I delete these empty lines and line breaks (there are two occurrences), it works:

 Help2: '<div class="advanced"><h4>Utilizzo avanzato</h4><ul><li>Colonne consentite: <em>%s</em></li><li>Gruppi esistenti sono individuati attraverso la proprietà univoca <em>Code</em> e aggiornati con i nuovi valori dal file importato.</li><li>Possono essere create gerarchie usando la colonna <em>ParentCode</em></li><li>Codici di autorizzazione possono essere assegnati con la colonna <em>PermissionCode</em>. I codici di autorizzazione preesistenti non saranno cancellati.</li></ul></div>'

I’m pretty sure the error also happens in other languages, so can you check the files and fix this issue?

Thanks, Mario

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Comments: 18 (18 by maintainers)

Most upvoted comments

PR to integrate that with our release tool here: https://github.com/silverstripe/cow/pull/22