Closed shama closed 6 years ago
FYI, I've been using this branch as my grunt
command for the past 2 weeks on all my projects. Everything has been 👍. There are a few more edge cases I want to test and then will merge/release this.
@shama, @vladikoff, @Arkni, ya'll are saints. Thank you for working on this!
One part I'm having second thoughts about is whether to support all the v8 flags. At the moment, v8flags needs to shell out node --v8-options
to get the list of options. This adds a tiny perf hit in the beginning and takes a lot of options from userland.
The alternative is someone could do node --harmony ./node_modules/.bin/grunt --my-flag
if they needed to run node with a specific flag.
a tiny perf hit
If it's a really tiny hit that's fine.
@shama That perf hit is only incurred once, we cache the output and read it from a file after subsequent runs.
Is anything holding this issue back? It sounds great!
Soon.
Ref: https://github.com/gruntjs/rfcs/blob/master/text/0001-liftoff.md
This is a conservative implementation of Liftoff into grunt-cli. It should be fully backwards compatible with existing Grunt versions. It needs a bit more vetting though to be sure.
This adds the ability to write your Gruntfile in any language:
Gruntfile.ts
,Gruntfile.coffee
,Gruntfile.babel.js
and many others. Or if the language isnt natively supported, you can run your own:grunt --require custom-lang/register
.You can also now specify v8 flags, so
grunt --harmony
gets passed to the node process (maybe not as useful these days but at least it can now).Down the road, this change will allow us to remove the
coffeescript
dependency andlib/grunt/cli.js
(among other related deps). When we do so, anyone who previously had aGruntfile.coffee
, would need to separatelynpm install coffeescript
but the good news is they'll no longer be stuck to our old version. But all that can wait until we do agrunt@2.0.0
release.