Subject: | templating is done before parsing INI, rather than after |
In [Git::Init] (and possibly other plugins), the .ini content is being read in as a single string, passed through the templater, and *then* parsed as INI content. This makes it impossible to embed special characters in the config values, as one might be able to by hiding them inside {{ }} blocks.
Example profile.ini:
[Git::Init]
commit_message = initial commit, via [Git::Init]{{ "\n\n" }}in {{ $dist->name }}-{{ $dist->version }}.
results in:
Syntax error at line 55: 'in Dist-Zilla-PluginBundle-Author-ETHER-0.007.
' at /Users/ether/.perlbrew/libs/19.0@std/lib/perl5/Config/MVP/Reader/INI.pm line 21.
The file should be parsed as an INI first, and then relevant attribute values should be templated separately.