diff options
author | Michał Gołębiowski <m.goleb@gmail.com> | 2015-08-03 20:28:37 +0200 |
---|---|---|
committer | Michał Gołębiowski <m.goleb@gmail.com> | 2015-09-08 17:50:33 +0200 |
commit | 5f1c7fc81e0ea7bb072268724c0eeed137eb932b (patch) | |
tree | 81d8e8fb4e67526bf2a586c4aa67919cff4b966e /build/tasks/install_jsdom.js | |
parent | 8c851bfdb952f2aa0b71bf30194184f954af2215 (diff) | |
download | jquery-5f1c7fc81e0ea7bb072268724c0eeed137eb932b.tar.gz jquery-5f1c7fc81e0ea7bb072268724c0eeed137eb932b.zip |
Build: Don't install jsdom 3 on Node.js 0.10 & 0.12 by default
jsdom 3 requires Python & Visual Studio on Windows which is a significant
barrier to contributors. Newer jsdom versions don't require pre-compiling
but work only on io.js. This commit installs the new jsdom everywhere (it
does install in old Node.js, it just won't work) and executes Node-related
tests only on newer Nodes or if a working jsdom version is installed. The
latter can be achieved by running the `old_jsdom` task.
Node.js is merging with io.js soon so this will become a smaller problem over
time.
One drawback is our Jenkins setup runs on Node 0.10 so it won't be running
Node tests anymore. We have Travis set up on io.js, though so all PRs
have those tests run. When the new LTS Node.js arrives (as it soon merges
with io.js) we should update our Jenkins infrastructure so that it runs on this
new version.
(cherry-picked from dbb2daa8c3a458e3525d310440f4365548edc138)
Fixes gh-2519
Closes gh-2526
Diffstat (limited to 'build/tasks/install_jsdom.js')
-rw-r--r-- | build/tasks/install_jsdom.js | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/build/tasks/install_jsdom.js b/build/tasks/install_jsdom.js deleted file mode 100644 index 73142b654..000000000 --- a/build/tasks/install_jsdom.js +++ /dev/null @@ -1,27 +0,0 @@ -module.exports = function( grunt ) { - grunt.registerTask( "jsdom", function() { - var current, - pkg = grunt.config( "pkg" ), - version = pkg.jsdomVersions[ - - // Unfortunately, this is currently the only - // way to tell the difference between Node and iojs - /^v0/.test( process.version ) ? "node" : "iojs" - ]; - - try { - current = require( "jsdom/package.json" ).version; - if ( current === version ) { - return; - } - } catch ( e ) {} - - // Use npm on the command-line - // There is no local npm - grunt.util.spawn( { - cmd: "npm", - args: [ "install", "jsdom@" + version ], - opts: { stdio: "inherit" } - }, this.async() ); - } ); -}; |