Cómo usar ES6 y ES7 en mi Gruntfile

Me gustaría usar ES6 y ES7 en mi Gruntfile. La razón es que me gustaría escribir una tarea, que incluye el module git-repository . Como puede ver en la documentation, el module solo está disponible en ES6 y ES7 y me gustaría integrar este module lo más fácil posible. ¿Hay alguna manera de que pueda usar ES6 y ES7 también en mi Gruntfile, algo así como babel grunt ? Lamentablemente, no encontré nada en Google y, por lo tanto, espero que pueda ayudarme.

¡Gracias de antemano! 🙂

Por lo general, es posible que desee utilizar una herramienta de compilation para transstackr, por lo que este es un problema de "quién creará una herramienta de compilation".

No es habitual que el package público en NPM esté disponible solo en ES.next o ES6 con set de características que Node no admite. git-repository no es una exception. Seguramente ha transstackdo el código en el package y se puede usar sin Babel.

Debido a que el package fue transstackdo con babel-plugin-transform-runtime , se requiere que babel-polyfill funcione.

La documentation utiliza async...await solo como ejemplo porque se adapta al flujo de trabajo. async funciones async usan promises, en ES5 / ES6 sería

 require('babel-polyfill'); Repo.open('./example', { init: true }) .then(repo => repo.setRemote('origin', 'https://github.com/user/example.git') .then(() => repo.add('--all .')) .then(() => repo.commit('Commit message')) ... ); 

co es una excelente alternativa para la async...await set de características de Node ES6 que no requiere transpiler.