Skip to content

Commit a23b69b

Browse files
committed
Fix CI with older Node.js versions.
1 parent 8b2b014 commit a23b69b

File tree

4 files changed

+33
-6
lines changed

4 files changed

+33
-6
lines changed

.travis.yml

-3
Original file line numberDiff line numberDiff line change
@@ -49,9 +49,6 @@ matrix:
4949
# - os: osx
5050
# env: CC=clang-3.8 CXX=clang++-3.8 npm_config_clang=1
5151

52-
before_install:
53-
VER=`npm --version` eval 'ARRAY=(${VER//./ }) && if [ ${ARRAY[0]} -lt 2 ] || ( [ ${ARRAY[0]} -eq 2 ] && [ ${ARRAY[1]} -lt 13 ] ) ; then npm install -g npm; fi'
54-
5552
after_script:
5653
if [ ${TRAVIS_JOB_NUMBER##*.} == 1 ] && [ "$TRAVIS_PULL_REQUEST" == "false" ]; then bin/ci-trigger; fi
5754

appveyor.yml

-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ matrix:
1515
allow_failures:
1616
- nodejs_version: 0.10
1717
install:
18-
- npm install -g npm
1918
- set PATH=%APPDATA%\npm;%PATH%
2019
- npm install
2120
build: off

package.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818
"tslint": "tslint",
1919
"cbuild": "cbuild",
2020
"dump-lib": "dump-em-lib dist/em-api.js",
21-
"lint": "tslint --type-check -c src/tslint.json -p src/tsconfig.json && tslint --type-check -c src/tslint.json -p src/em/tsconfig.json",
22-
"prepublish": "npm run lint && tsc -p src/em && tsc -p src && cbuild -x -v -s dist/bundle/em/em-api.js -o dist/em-api.js",
21+
"lint": "node src/checkver.js lt 4.1.2 || (tslint --type-check -c src/tslint.json -p src/tsconfig.json && tslint --type-check -c src/tslint.json -p src/em/tsconfig.json)",
22+
"prepublish": "npm run lint && tsc -p src/em && tsc -p src && (node src/checkver.js lt 0.12.0 || cbuild -x -v -s dist/bundle/em/em-api.js -o dist/em-api.js)",
2323
"clean-asm": "cd test/em && node-gyp clean",
2424
"config-test": "autogypi -c test/autogypi.json",
2525
"test-asm": "npm run config-test && cd test/em && node-gyp configure build --asmjs=1 && node ../../bin/ndts . > ../testlib.d.ts && tsc -p .. && tap ../test.js",

src/checkver.js

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
2+
var op = process.argv[2].match(/^([gl])([te])$/);
3+
var wanted = (process.argv[3] || '').split('.');
4+
var version = process.versions.node.split('.');
5+
6+
if(!op || wanted.length != 3) {
7+
console.log([
8+
'usage:',
9+
process.argv[0].replace(/.*\//, ''),
10+
process.argv[1].replace(/.*\//, ''),
11+
'op',
12+
'x.y.z'
13+
].join(' '));
14+
15+
console.log('\nCompare Node.js version.');
16+
console.log('Following op codes determine whether it must be:\n');
17+
18+
console.log('\tgt\tGreater than x.y.z.');
19+
console.log('\tge\tGreater than or equal to x.y.z.');
20+
console.log('\tlt\tLess than x.y.z.');
21+
console.log('\tle\tLess than or equal to x.y.z.');
22+
23+
process.exit(1);
24+
}
25+
26+
for(var i = 0; i < 3; ++i) {
27+
if(+version[i] > +wanted[i]) process.exit(+(op[1] != 'g'));
28+
if(+version[i] < +wanted[i]) process.exit(+(op[1] == 'g'));
29+
}
30+
31+
process.exit(+(op[2] != 'e'));

0 commit comments

Comments
 (0)