@@ -21,35 +21,41 @@ cache:
21
21
directories :
22
22
- node_modules
23
23
before_install :
24
+ - |
25
+ function v () {
26
+ tr '.' '\n' <<< "${1}" \
27
+ | awk '{ printf "%03d", $0 }' \
28
+ | sed 's/^0*//'
29
+ }
24
30
# Configure npm
25
31
- |
26
32
# Skip updating shrinkwrap / lock
27
33
npm config set shrinkwrap false
28
34
# Setup Node.js version-specific dependencies
29
35
- |
30
36
# eslint for linting
31
- # - remove on Node.js < 6
32
- if [[ "$(cut -d. -f1 <<< "$TRAVIS_NODE_VERSION")" -lt 6 ]]; then
37
+ if [[ "$(v "$TRAVIS_NODE_VERSION")" -lt "$(v '6.0')" ]]; then
38
+ # - remove on Node.js < 6
33
39
node -pe 'Object.keys(require("./package").devDependencies).join("\n")' | \
34
40
grep -E '^eslint(-|$)' | \
35
41
xargs npm rm --save-dev
36
42
fi
37
43
- |
38
44
# istanbul for coverage
39
- # - remove on Node.js < 0.10
40
- if [[ "$(cut -d. -f1 <<< "$TRAVIS_NODE_VERSION")" -eq 0 && "$(cut -d. -f2 <<< "$TRAVIS_NODE_VERSION")" -lt 10 ]]; then
45
+ if [[ "$(v "$TRAVIS_NODE_VERSION")" -lt "$(v ' 0.10')" ]]; then
46
+ # - remove on Node.js < 0.10
41
47
npm rm --save-dev istanbul
42
48
fi
43
49
- |
44
50
# mocha for testing
45
- # - use 1.x for Node.js < 0.8
46
- # - use 2.x for Node.js < 0.10
47
- # - use 3.x for Node.js < 6
48
- if [[ "$(cut -d. -f1 <<< "$TRAVIS_NODE_VERSION")" -eq 0 && "$(cut -d. -f2 <<< "$TRAVIS_NODE_VERSION")" -lt 8 ]]; then
51
+ if [[ "$(v "$TRAVIS_NODE_VERSION")" -lt "$(v '0.8')" ]]; then
52
+ # - use 1.x for Node.js < 0.8
49
53
npm install --save-dev [email protected]
50
- elif [[ "$(cut -d. -f1 <<< "$TRAVIS_NODE_VERSION")" -eq 0 && "$(cut -d. -f2 <<< "$TRAVIS_NODE_VERSION")" -lt 10 ]]; then
54
+ elif [[ "$(v "$TRAVIS_NODE_VERSION")" -lt "$(v '0.10')" ]]; then
55
+ # - use 2.x for Node.js < 0.10
51
56
npm install --save-dev [email protected]
52
- elif [[ "$(cut -d. -f1 <<< "$TRAVIS_NODE_VERSION")" -lt 6 ]]; then
57
+ elif [[ "$(v "$TRAVIS_NODE_VERSION")" -lt "$(v '6.0')" ]]; then
58
+ # - use 3.x for Node.js < 6
53
59
npm install --save-dev [email protected]
54
60
fi
55
61
# Update Node.js modules
0 commit comments