ICSv2 will be used as a preparation to fully change to ES2017 only. For now the compilation will be done by transpiling from ICSv2 to ES2015+, then using lebab to upgrade some left-over code parts and then using Babel to transpile down some of the features that Node does not support yet. This way we already make sure we can theoretically use ES2017.
- Use import instead of require.
- Rename *.iced to *.coffee with some exceptions (see below).
- Rename app.iced to index.coffee.
- Rename app.js to index.js.
- Wrap app code in function definition to avoid import statements not being at top-most root.
- Avoid using fat arrows where unnecessary to reduce overhead in generated ES code.
Known issues:
- Currently the code can not be run without being built first. We need to see how we can solve that soon.
The new Winston version does not expose an "addFilter" function anymore
and instead it seems that the filters member itself is directly exposed
so we can push our own filter directly to it. Additionally, the order of
parameters seems to be changed.