YahooArchive / guerilla

Guerilla is a distributed build/test server specialized for iOS and Android.
MIT License
17 stars 8 forks source link

Which versions of node should guerilla work with? #42

Closed seyeojumu closed 8 years ago

seyeojumu commented 8 years ago

A recent PR used String.prototype.includes, an ES6 feature.

Running node 0.12 with --harmony adds String.prototype.contains, not the the standard's .includes.

Which node versions are supported / how guerilla is supposed to be run?

nickwph commented 8 years ago

it works with 5.7.0 and 5.6.0 on my machine. but i don't know what exact versions it is supposed to be run.

BruceBGordon commented 8 years ago

We need a philosophy. I suggest that we try to stick to the latest stable release of Node, backing off when we have to.

vpulim commented 8 years ago

I think we should try not to use new ES6 features whenever possible as many users of guerilla may be running older versions and/or may not be able to upgrade for various reasons. In the case of String.prototype.includes, indexOf() works just as well.

BruceBGordon commented 8 years ago

A hard call. I would like to improve our productivity and code clarity, and recent enhancements like maps help out there.  I've been assuming (perhaps wrongly) that we would run on the latest and there may be some ES6 creep already!

On Wednesday, March 2, 2016 11:35 AM, Vinay Pulim <notifications@github.com> wrote:

I think we should try not to use new ES6 features whenever possible as many users of guerilla may be running older versions and/or may not be able to upgrade for various reasons. In the case of String.prototype.includes, indexOf() works just as well.— Reply to this email directly or view it on GitHub.

seyeojumu commented 8 years ago

How about this? For now, guerilla should run on 0.12, w/o the harmony flag. That won't break any existing uses, Map for instance. I can make the changes and cut a PR.

Then, to future proof, something like babel can be added, to allow es6 features to work with the engines currently in use.

Then, either aligned to the LTS schedule or whenever people decide, the engine version can cut over and babel can be removed.

/cc @thekushpatel

vpulim commented 8 years ago

@seyeojumu: i like that plan

thekushpatel commented 8 years ago

@seyeojumu agreed, solid plan. would be awesome if you could make those changes and make a note of that in the docs.

seyeojumu commented 8 years ago

done #43 #44