Native-packager has currently a homemade templating system, which has scaled well so far. It provides the following features
one-time resolving of placeholders
bash and bat friendly surroundings ( ${{placeholder}} and @@placeholder@@ )
different charsets and eol styles
placeholder definition as Seq[(String,String)], allowing duplicate additions
These features limited the usage in many ways, which lead to the following hard to use/debug issues
Template nesting is done with placeholders, which means the value's in the replacements: Seq[(String,String)] become incredible large strings, making debugging hard and nested resolving a manual work.
Different placeholder styles need additional configuration
No typing for template and global namespaces (linuxScriptReplacements, bashScriptReplacements) lead to a lot of clutter and hard to understand mechanisms
Status Quo
Native-packager has currently a homemade templating system, which has scaled well so far. It provides the following features
${{placeholder}}
and@@placeholder@@
)Seq[(String,String)]
, allowing duplicate additionsThese features limited the usage in many ways, which lead to the following hard to use/debug issues
replacements: Seq[(String,String)]
become incredible large strings, making debugging hard and nested resolving a manual work.linuxScriptReplacements
,bashScriptReplacements
) lead to a lot of clutter and hard to understand mechanismsRequirements
The experience lead to the following requirements
Acceptance Criteria