diff --git a/.travis-ci.sh b/.travis-ci.sh index 57aae890..e6df7327 100644 --- a/.travis-ci.sh +++ b/.travis-ci.sh @@ -14,11 +14,11 @@ BLACKLIST if [[ $TASK = 'nosetests' ]]; then nosetests --verbosity=3 --detailed-errors elif [[ $TASK = 'karma' ]]; then - grunt --verbose unit-test + grunt --verbose --debug --stack unit-test elif [[ $TASK = 'lint' ]]; then - grunt --verbose lint + grunt --verbose --debug --stack lint elif [[ $TASK = 'closure-compiler' ]]; then - grunt --verbose closure-compiler + grunt --verbose --debug --stack closure-compiler elif [[ $TASK = 'data-check' ]]; then ./tools/make_manufacturer_data.sh > data/manufacturer_data.py && git diff --exit-code data/manufacturer_data.py elif [[ $TASK = 'spellintian' ]]; then diff --git a/.travis.yml b/.travis.yml index 72dff21f..27d42c2c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,22 +1,33 @@ language: python before_cache: -- rm -f $HOME/.cache/pip/log/debug.log # erase log + - rm -f $HOME/.cache/pip/log/debug.log # erase log cache: + apt: true + npm: true + pip: true directories: - $HOME/.npm - $HOME/.cache/pip +before_install: + #Switch node to the latest LTS version + - if [ "$TASK" = "karma" -o "$TASK" = "lint" -o "$TASK" = "closure-compiler" ]; then nvm install lts/* && nvm use lts/*; fi + install: - if [ "$TASK" = "nosetests" -o "$TASK" = "flake8" -o "$TASK" = "flake8-wip" ]; then pip install json-spec; fi - - if [ "$TASK" = "karma" -o "$TASK" = "lint" -o "$TASK" = "closure-compiler" ]; then npm install -g grunt-cli; fi - - if [ "$TASK" = "karma" -o "$TASK" = "lint" -o "$TASK" = "closure-compiler" ]; then npm install; fi + - if [ "$TASK" = "karma" -o "$TASK" = "lint" -o "$TASK" = "closure-compiler" ]; then npm --verbose install -g grunt-cli; fi + - if [ "$TASK" = "karma" -o "$TASK" = "lint" -o "$TASK" = "closure-compiler" ]; then grunt --version --verbose; fi + - if [ "$TASK" = "karma" -o "$TASK" = "lint" -o "$TASK" = "closure-compiler" ]; then npm --verbose install; fi - if [ "$TASK" = "flake8" -o "$TASK" = "flake8-wip" ]; then pip install flake8; fi # If this causes SSL errors, then Sourceforge is probably in disaster recovery mode and needing Javascript. Could switch to a specific mirror, e.g. kent.dl.sourceforge.net - if [ "$TASK" = "pychecker" -o "$TASK" = "pychecker-wip" ]; then pip install http://sourceforge.net/projects/pychecker/files/pychecker/0.8.19/pychecker-0.8.19.tar.gz/download; fi - if [ "$TASK" = "codespell" ]; then pip install git+https://github.com/codespell-project/codespell.git; fi +after_failure: +- if [ -f /home/travis/.npm/_logs/*-debug.log ]; then cat /home/travis/.npm/_logs/*-debug.log; fi + matrix: fast_finish: true include: @@ -27,7 +38,17 @@ matrix: - os: linux dist: focal arch: arm64 - env: TASK="karma" + env: + - TASK="karma" + # Make Firefox headless + - MOZ_HEADLESS=1 + # Mozilla doesn't currently support nightly arm64 builds, so install via apt instead + #addons: + # firefox: latest + addons: + apt: + packages: + - firefox services: - xvfb - os: linux diff --git a/Gruntfile.js b/Gruntfile.js index 2e14f04a..4a628c6b 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -27,7 +27,7 @@ module.exports = function(grunt) { build: { files: [{ dest: './static/js/rdm.js', - src: './js_src/rdm.js'//TODO(dave): change this to ./js_scr/*js + src: './js_src/rdm.js'//TODO(dave): change this to ./js_src/*js }], options: { mangle: true, @@ -61,7 +61,7 @@ module.exports = function(grunt) { jshint: { dev: [ 'Gruntfile.js', - 'js_src/rdm.js',//TODO(dave): change this to ./js_scr/*js + 'js_src/rdm.js',//TODO(dave): change this to ./js_src/*js 'unit-test-js/karma.conf.js', 'unit-test-js/tests/*js' ], @@ -72,12 +72,11 @@ module.exports = function(grunt) { jscs: { src: [ 'Gruntfile.js', - 'js_src/rdm.js',//TODO(dave): change this to ./js_scr/*js + 'js_src/rdm.js',//TODO(dave): change this to ./js_src/*js 'unit-test-js/karma.conf.js', 'unit-test-js/tests/*js' ], options: { - verbose: true, config: true } }, diff --git a/package.json b/package.json index a1b21dfa..5d3a4983 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "rdm-app", - "version": "0.1.0", + "version": "0.1.1", "repository": "OpenLightingProject/rdm-app", "author": { "name": "Open Lighting Project", @@ -17,21 +17,21 @@ "google-closure-compiler": "^20170910.0.0", "google-closure-library": "^20170910.0.0", "grunt": "^1.0.0", - "grunt-bower-task": "~0.4.0", - "grunt-contrib-clean": "~0.6.0", + "grunt-bower-task": "~0.6.2", + "grunt-contrib-clean": "~2.0.1", "grunt-contrib-copy": "~0.8.0", "grunt-contrib-jshint": "^0.12.0", "grunt-contrib-uglify": "~0.9.1", - "grunt-contrib-watch": "~0.6.1", - "grunt-jscs": "^1.8.0", - "grunt-karma": "^0.12.2", - "grunt-stylelint": "^0.13.0", - "karma": "^1.6.0", - "karma-chrome-launcher": "~0.1", - "karma-firefox-launcher": "~0.1", - "karma-jasmine": "~0.2.0", - "olp-javascript-style": "openlightingproject/javascript-style", - "stylelint": "^12.0.1", - "stylelint-config-recommended": "^3.0.0" + "grunt-contrib-watch": "~1.1.0", + "grunt-jscs": "^3.0.1", + "grunt-karma": "^4.0.2", + "grunt-stylelint": "^0.16.0", + "karma": "^6.4.0", + "karma-chrome-launcher": "~3.1.1", + "karma-firefox-launcher": "~2.1.2", + "karma-jasmine": "~5.1.0", + "olp-javascript-style": "git://github.com/OpenLightingProject/javascript-style", + "stylelint": "^13.8.0", + "stylelint-config-recommended": "^5.0.0" } }