Looks good, this version format does seem to be recommended in Python-world: https://packaging.python.org/en/latest/specifications/version-specifiers/
Thanks!
So, if d23cef6a1d can be cherry-picked into master this can also be closed.
Done. Thanks!
That sounds pretty good. I will see if I find some time to implement an initial version.
Do not advertise the polyglot feature as something you should be doing. You should not, unless you know what you're doing.
I wouldn't make any change to this page. cdist stays what it is, even if you can execute manifests with arbitrary interpreters.
Same as for the manifest doc, "While explorer are typically written in POSIX shell, ..."
Manifest are executed locally as a shell script using /bin/sh -e, unless another shebang as been set.
cdist types are written in POSIX shell, and it happen that advanced users can call gencode-* and manifests with arbitrary interpreters. There's no language-agnostic extension system - and cdist upstream won't accept non-shell types anytime soon (much harder to maintain, much harder to ship).
I haven't read the details - why do we/you need this now?
I would just mention here that it is possible to user languages via shebang, just as in your standard UNIX environment. CDIST users are expected to (and will) use sh... and advanced users can plug something else in specific places if they want to. Putting it along the core features makes the whole thing pretty confusing for new users.