diff --git a/.gitignore b/.gitignore index 3a7b52a6..8f5b2905 100644 --- a/.gitignore +++ b/.gitignore @@ -59,3 +59,5 @@ out/ # Ignore perf test cache scripts/cache + +eslintrc diff --git a/.travis.yml b/.travis.yml index 65d2b3f9..2b0bed4d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,7 +3,8 @@ node_js: - "0.10" before_script: - npm install -g eslint - - eslint --reset -c ./eslintrc $(git --no-pager diff --name-only --relative FETCH_HEAD $(git merge-base FETCH_HEAD origin/HEAD) | grep "\.js$") + - curl 'https://raw.githubusercontent.com/ripple/javascript-style-guide/master/eslintrc' > ./eslintrc + - eslint --reset -c ./eslintrc $(git --no-pager diff --name-only --diff-filter=AM --relative FETCH_HEAD $(git merge-base FETCH_HEAD origin/HEAD) | grep "\.js$") script: MOCHA_REPORTER=tap npm test --coverage after_success: - npm run coveralls diff --git a/eslintrc b/eslintrc deleted file mode 100644 index a249dacb..00000000 --- a/eslintrc +++ /dev/null @@ -1,155 +0,0 @@ -# ESLint documentation can be found at http://eslint.org/docs/ -env: - browser: true - node: true - amd: false - mocha: true - jasmine: false -rules: - no-alert: 2 - no-array-constructor: 2 - no-bitwise: 0 - no-caller: 2 - no-catch-shadow: 2 - no-comma-dangle: 2 - no-cond-assign: [2, 'always'] - no-console: 0 - no-constant-condition: 2 - no-control-regex: 2 - no-debugger: 2 - no-delete-var: 2 - no-div-regex: 0 - no-dupe-keys: 2 - no-else-return: 2 - no-empty: 2 - no-empty-class: 2 - no-empty-label: 2 - no-eq-null: 2 - no-eval: 2 - no-ex-assign: 2 - no-extend-native: 2 - no-extra-bind: 2 - no-extra-boolean-cast: 2 - no-extra-parens: 0 - no-extra-semi: 2 - no-fallthrough: 2 - no-floating-decimal: 0 - no-func-assign: 2 - no-implied-eval: 2 - no-inline-comments: 0 - no-inner-declarations: [2, 'functions'] - no-invalid-regexp: 2 - no-irregular-whitespace: 2 - no-iterator: 2 - no-label-var: 2 - no-labels: 2 - no-lone-blocks: 2 - no-lonely-if: 2 - no-loop-func: 2 - no-mixed-requires: [0, false] - no-mixed-spaces-and-tabs: [2, false] - no-multi-spaces: 2 - no-multi-str: 2 - no-multiple-empty-lines: [2, {max: 2}] - no-native-reassign: 2 - no-negated-in-lhs: 2 - no-nested-ternary: 0 - no-new: 2 - no-new-func: 2 - no-new-object: 2 - no-new-require: 0 - no-new-wrappers: 2 - no-obj-calls: 2 - no-octal: 2 - no-octal-escape: 2 - no-path-concat: 0 - no-plusplus: 0 - no-process-env: 0 - no-process-exit: 0 - no-proto: 2 - no-redeclare: 2 - no-regex-spaces: 2 - no-reserved-keys: 0 - no-restricted-modules: 0 - no-return-assign: 2 - no-script-url: 2 - no-self-compare: 2 - no-sequences: 2 - no-shadow: 2 - no-shadow-restricted-names: 2 - no-space-before-semi: 2 - no-spaced-func: 2 - no-sparse-arrays: 2 - no-sync: 0 - no-ternary: 0 - no-trailing-spaces: 2 - no-undef: 2 - no-undef-init: 2 - no-undefined: 0 - no-underscore-dangle: 0 - no-unreachable: 2 - no-unused-expressions: 2 - no-unused-vars: [2, {vars: 'all', args: 'after-used'}] - no-use-before-define: 2 - no-void: 2 - no-var: 0 - no-warning-comments: [0, {terms: ['todo', 'fixme', 'xxx'], location: 'start'}] - no-with: 2 - no-wrap-func: 2 - block-scoped-var: 2 - brace-style: 2 - camelcase: 0 - comma-spacing: 2 - comma-style: 2 - complexity: [0, 11] - consistent-return: 2 - consistent-this: [2, 'self'] - curly: [2, 'all'] - default-case: 0 - dot-notation: [2, {allowKeywords: true}] - eol-last: 2 - eqeqeq: 2 - func-names: 0 - func-style: [2, 'declaration'] - generator-star: 0 - guard-for-in: 0 - handle-callback-err: 2 - key-spacing: [2, {beforeColon: false, afterColon: true}] - max-depth: [1, 4] - max-len: [2, 80] - max-nested-callbacks: [1, 2] - max-params: [1, 4] - max-statements: [0, 10] - new-cap: 2 - new-parens: 2 - one-var: 0 - operator-assignment: [0, 'always'] - padded-blocks: 0 - quote-props: 0 - quotes: [2, 'single'] - radix: 2 - semi: 2 - sort-vars: 0 - space-after-function-name: [0, 'never'] - space-after-keywords: 2 - space-before-blocks: 2 - space-in-brackets: 2 - space-in-parens: 2 - space-infix-ops: 2 - space-return-throw-case: 2 - space-unary-ops: [2, {words: true, nonwords: false}] - spaced-line-comment: 2 - strict: [2, 'global'] - use-isnan: 2 - valid-jsdoc: 2 - valid-typeof: 2 - vars-on-top: 0 - wrap-iife: 0 - wrap-regex: 0 - yoda: [2, 'never'] -ecmaFeatures: - blockBindings: true - defaultParams: true - forOf: true - generators: true - jsx: true diff --git a/package.json b/package.json index 9b46d86f..95c7c59f 100644 --- a/package.json +++ b/package.json @@ -52,7 +52,7 @@ "pretest": "node_modules/.bin/gulp concat-sjcl", "test": "./node_modules/.bin/istanbul test -x build/sjcl.js -x src/js/jsbn/* ./node_modules/mocha/bin/_mocha -- --reporter ${MOCHA_REPORTER:=spec} test/*-test.js", "coveralls": "cat ./coverage/lcov.info | ./node_modules/.bin/coveralls", - "lint": "eslint --reset -c eslintrc src/js/ripple/*.js", + "lint": "if ! [ -f eslintrc ]; then curl -o eslintrc 'https://raw.githubusercontent.com/ripple/javascript-style-guide/master/eslintrc'; fi; eslint --reset -c eslintrc src/js/ripple/*.js", "perf": "./scripts/perf_test.sh" }, "repository": {