Various updates.

This commit is contained in:
Julien Fontanet 2014-04-14 16:38:29 +02:00
parent 8b65a75235
commit 301cc22985
3 changed files with 114 additions and 126 deletions

View File

@ -3,9 +3,6 @@
# top-most EditorConfig file # top-most EditorConfig file
root = true root = true
# Unix-style newlines with a newline ending every file
#
# Tab indentation (size of 2 spaces)
[*] [*]
charset = utf-8 charset = utf-8
end_of_line = lf end_of_line = lf

View File

@ -1,126 +1,118 @@
{ {
// -------------------------------------------------------------------- // --------------------------------------------------------------------
// JSHint Configuration, Node.js Edition // JSHint Configuration, Node.js Edition
// -------------------------------------------------------------------- // --------------------------------------------------------------------
// //
// This is an options template for [JSHint][1], forked from // This is an options template for [JSHint][1], forked from
// haschek's [JSHint template][2]: // haschek's [JSHint template][2]:
// //
// * the environment has been changed to `node`; // * the environment has been changed to `node`;
// * recent options were added; // * recent options were added;
// * coding style has been adapted to node (e.g. 2 spaces // * coding style has been adapted to node (e.g. 2 spaces
// indenting, global use strict). // indenting, global use strict).
// //
// [1]: http://www.jshint.com/ // [1]: http://www.jshint.com/
// [2]: https://gist.github.com/haschek/2595796 // [2]: https://gist.github.com/haschek/2595796
// //
// @author Julien Fontanet <julien.fontanet@isonoe.net> // @author Julien Fontanet <julien.fontanet@isonoe.net>
// @license http://unlicense.org/ // @license http://unlicense.org/
// == Enforcing Options =============================================== // == Enforcing Options ===============================================
// //
// These options tell JSHint to be more strict towards your code. Use // These options tell JSHint to be more strict towards your code. Use
// them if you want to allow only a safe subset of JavaScript, very // them if you want to allow only a safe subset of JavaScript, very
// useful when your codebase is shared with a big number of developers // useful when your codebase is shared with a big number of developers
// with different skill levels. // with different skill levels.
"bitwise" : true, // Prohibit bitwise operators (&, |, ^, etc.). "bitwise" : true, // Prohibit bitwise operators (&, |, ^, etc.).
"camelcase" : true, // Require variable names to use either camelCase or UPPER_CASE styles. "camelcase" : true, // Require variable names to use either camelCase or UPPER_CASE styles.
"curly" : true, // Require {} for every new block or scope. "curly" : true, // Require {} for every new block or scope.
"eqeqeq" : true, // Require triple equals i.e. `===`. "eqeqeq" : true, // Require triple equals i.e. `===`.
"forin" : true, // Tolerate `for in` loops without `hasOwnPrototype`. "forin" : true, // Tolerate `for in` loops without `hasOwnPrototype`.
"freeze" : true, // Prohibit modification of native objects' prototypes. "freeze" : true, // Prohibit modification of native objects' prototypes.
"immed" : true, // Require immediate invocations to be wrapped in parens e.g. `( function(){}() );` "immed" : true, // Require immediate invocations to be wrapped in parens e.g. `( function(){}() );`
"indent" : 2, // Specify indentation spacing "indent" : 2, // Specify indentation spacing
"latedef" : true, // Prohibit variable use before definition. "latedef" : true, // Prohibit variable use before definition.
"newcap" : true, // Require capitalization of all constructor functions e.g. `new F()`. "newcap" : true, // Require capitalization of all constructor functions e.g. `new F()`.
"noarg" : true, // Prohibit use of `arguments.caller` and `arguments.callee`. "noarg" : true, // Prohibit use of `arguments.caller` and `arguments.callee`.
"noempty" : true, // Prohibit use of empty blocks. "noempty" : true, // Prohibit use of empty blocks.
"nonew" : true, // Prohibit use of constructors for side-effects. "nonew" : true, // Prohibit use of constructors for side-effects.
"plusplus" : false, // Prohibit the use of `++` & `--`. "plusplus" : false, // Prohibit the use of `++` & `--`.
"quotmark" : "'", // Require single quotes. "quotmark" : "'", // Require single quotes.
"undef" : true, // Require all non-global variables be declared before they are used. "undef" : true, // Require all non-global variables be declared before they are used.
"unused" : true, // Prohibit unused variables. "unused" : true, // Prohibit unused variables.
"strict" : true, // Require `use strict` pragma in every function. "strict" : true, // Require `use strict` pragma in every function.
"trailing" : true, // Prohibit trailing whitespaces. "trailing" : true, // Prohibit trailing whitespaces.
"maxparams" : 4, // Prohibit more than 4 parameters per function definition. "maxparams" : 4, // Prohibit more than 4 parameters per function definition.
"maxdepth" : 3, // Prohibit nesting more than 3 control blocks. "maxdepth" : 3, // Prohibit nesting more than 3 control blocks.
"maxstatements" : 20, // Prohibit more than 20 statements per function. "maxstatements" : 20, // Prohibit more than 20 statements per function.
"maxcomplexity" : 7, // Prohibit having to much branches in your code. "maxcomplexity" : 7, // Prohibit having to much branches in your code.
"maxlen" : 80, // Prohibit line with more than 80 characters. "maxlen" : 80, // Prohibit line with more than 80 characters.
// == Relaxing Options ================================================ // == Relaxing Options ================================================
// //
// These options allow you to suppress certain types of warnings. Use // These options allow you to suppress certain types of warnings. Use
// them only if you are absolutely positive that you know what you are // them only if you are absolutely positive that you know what you are
// doing. // doing.
"asi" : false, // Tolerate Automatic Semicolon Insertion (no semicolons). "asi" : false, // Tolerate Automatic Semicolon Insertion (no semicolons).
"boss" : false, // Tolerate assignments inside if, for & while. Usually conditions & loops are for comparison, not assignments. "boss" : false, // Tolerate assignments inside if, for & while. Usually conditions & loops are for comparison, not assignments.
"debug" : false, // Allow debugger statements e.g. browser breakpoints. "debug" : false, // Allow debugger statements e.g. browser breakpoints.
"eqnull" : false, // Tolerate use of `== null`. "eqnull" : false, // Tolerate use of `== null`.
"es5" : false, // Allow EcmaScript 5 syntax. "esnext" : false, // Allow ES.next specific features such as `const` and `let`.
"esnext" : false, // Allow ES.next specific features such as `const` and `let`. "evil" : false, // Tolerate use of `eval`.
"evil" : false, // Tolerate use of `eval`. "expr" : true, // Tolerate `ExpressionStatement` as Programs. (Allowed for Mocha.)
"expr" : true, // Tolerate `ExpressionStatement` as Programs. (Allowed for Mocha.) "funcscope" : false, // Tolerate declarations of variables inside of control structures while accessing them later from the outside.
"funcscope" : false, // Tolerate declarations of variables inside of control structures while accessing them later from the outside. "gcl" : false, // Makes JSHint compatible with Google Closure Compiler.
"gcl" : false, // Makes JSHint compatible with Google Closure Compiler. "globalstrict" : true, // Allow global "use strict" (also enables 'strict').
"globalstrict" : true, // Allow global "use strict" (also enables 'strict'). "iterator" : false, // Allow usage of __iterator__ property.
"iterator" : false, // Allow usage of __iterator__ property. "lastsemic" : false, // Tolerate missing semicolons when the it is omitted for the last statement in a one-line block.
"lastsemic" : false, // Tolerat missing semicolons when the it is omitted for the last statement in a one-line block. "laxbreak" : false, // Tolerate unsafe line breaks e.g. `return [\n] x` without semicolons.
"laxbreak" : false, // Tolerate unsafe line breaks e.g. `return [\n] x` without semicolons. "laxcomma" : false, // Suppress warnings about comma-first coding style.
"laxcomma" : false, // Suppress warnings about comma-first coding style. "loopfunc" : false, // Allow functions to be defined within loops.
"loopfunc" : false, // Allow functions to be defined within loops. "maxerr" : 50, // Maximum errors before stopping.
"maxerr" : 50, // Maximum errors before stopping. "moz" : false, // Tolerate Mozilla JavaScript extensions.
"moz" : false, // Tolerate Mozilla JavaScript extensions. "notypeof" : false, // Tolerate invalid typeof values.
"notypeof" : false, // Tolerate invalid typeof values. "multistr" : false, // Tolerate multi-line strings.
"multistr" : false, // Tolerate multi-line strings. "proto" : false, // Tolerate __proto__ property. This property is deprecated.
"proto" : false, // Tolerate __proto__ property. This property is deprecated. "scripturl" : false, // Tolerate script-targeted URLs.
"scripturl" : false, // Tolerate script-targeted URLs. "smarttabs" : false, // Tolerate mixed tabs and spaces when the latter are used for alignment only.
"smarttabs" : false, // Tolerate mixed tabs and spaces when the latter are used for alignmnent only. "shadow" : false, // Allows re-define variables later in code e.g. `var x=1; x=2;`.
"shadow" : false, // Allows re-define variables later in code e.g. `var x=1; x=2;`. "sub" : false, // Tolerate all forms of subscript notation besides dot notation e.g. `dict['key']` instead of `dict.key`.
"sub" : false, // Tolerate all forms of subscript notation besides dot notation e.g. `dict['key']` instead of `dict.key`. "supernew" : false, // Tolerate `new function () { ... };` and `new Object;`.
"supernew" : false, // Tolerate `new function () { ... };` and `new Object;`. "validthis" : false, // Tolerate strict violations when the code is running in strict mode and you use this in a non-constructor function.
"validthis" : false, // Tolerate strict violations when the code is running in strict mode and you use this in a non-constructor function.
// == Environments ==================================================== // == Environments ====================================================
// //
// These options pre-define global variables that are exposed by // These options pre-define global variables that are exposed by
// popular JavaScript libraries and runtime environments—such as // popular JavaScript libraries and runtime environments—such as
// browser or node.js. // browser or node.js.
"browser" : true, // Standard browser globals e.g. `window`, `document`. "browser" : true, // Standard browser globals e.g. `window`, `document`.
"couch" : false, // Enable globals exposed by CouchDB. "couch" : false, // Enable globals exposed by CouchDB.
"devel" : false, // Allow development statements e.g. `console.log();`. "devel" : false, // Allow development statements e.g. `console.log();`.
"dojo" : false, // Enable globals exposed by Dojo Toolkit. "dojo" : false, // Enable globals exposed by Dojo Toolkit.
"jquery" : false, // Enable globals exposed by jQuery JavaScript library. "jquery" : false, // Enable globals exposed by jQuery JavaScript library.
"mootools" : false, // Enable globals exposed by MooTools JavaScript framework. "mocha" : true, // Enable globals exposed by the mocha test runner.
"node" : true, // Enable globals available when code is running inside of the NodeJS runtime environment. "mootools" : false, // Enable globals exposed by MooTools JavaScript framework.
"nonstandard" : false, // Define non-standard but widely adopted globals such as escape and unescape. "node" : true, // Enable globals available when code is running inside of the NodeJS runtime environment.
"phantom" : false, // Enable globals exposed by PhantomJS. "nonstandard" : false, // Define non-standard but widely adopted globals such as escape and unescape.
"prototypejs" : false, // Enable globals exposed by Prototype JavaScript framework. "phantom" : false, // Enable globals exposed by PhantomJS.
"rhino" : false, // Enable globals available when your code is running inside of the Rhino runtime environment. "prototypejs" : false, // Enable globals exposed by Prototype JavaScript framework.
"worker" : false, // Enable globals exposed when running inside a Web Worker. "rhino" : false, // Enable globals available when your code is running inside of the Rhino runtime environment.
"wsh" : false, // Enable globals available when your code is running as a script for the Windows Script Host. "worker" : false, // Enable globals exposed when running inside a Web Worker.
"yui" : false, // Enable globals exposed by YUI. "wsh" : false, // Enable globals available when your code is running as a script for the Windows Script Host.
"yui" : false, // Enable globals exposed by YUI.
// == JSLint Legacy =================================================== // == JSLint Legacy ===================================================
// //
// These options are legacy from JSLint. Aside from bug fixes they will // These options are legacy from JSLint. Aside from bug fixes they will
// not be improved in any way and might be removed at any point. // not be improved in any way and might be removed at any point.
"nomen" : false, // Prohibit use of initial or trailing underbars in names. "nomen" : false, // Prohibit use of initial or trailing underbars in names.
"onevar" : false, // Allow only one `var` statement per function. "onevar" : false, // Allow only one `var` statement per function.
"passfail" : false, // Stop on first error. "passfail" : false, // Stop on first error.
"white" : false, // Check against strict whitespace and indentation rules. "white" : false, // Check against strict whitespace and indentation rules.
"globals": { "globals": {}
// Mocha.
"after" : false,
"afterEach" : false,
"before" : false,
"beforeEach" : false,
"describe" : false,
"it" : false
}
} }

View File

@ -5,17 +5,17 @@
"author": "Julien Fontanet <julien.fontanet@vates.fr>", "author": "Julien Fontanet <julien.fontanet@vates.fr>",
"homepage": "https://github.com/vatesfr/xo-cli", "homepage": "https://github.com/vatesfr/xo-cli",
"bugs": { "bugs": {
"url": "https://github.com/vatesfr/xo-cli" "url": "https://github.com/vatesfr/xo-cli/issues"
}, },
"repository": { "repository": {
"type": "git", "type": "git",
"url": "https://github.com/vatesfr/xo-cli" "url": "https://github.com/vatesfr/xo-cli"
}, },
"dependencies": { "dependencies": {
"bluebird": "^1.1.0", "bluebird": "^1.2.2",
"chalk": "^0.4.0", "chalk": "^0.4.0",
"inquirer": "^0.4.1", "inquirer": "^0.4.1",
"l33teral": "^2.0.3", "l33teral": "^2.0.4",
"lodash": "^2.4.1", "lodash": "^2.4.1",
"mkdirp": "^0.3.5", "mkdirp": "^0.3.5",
"nomnom": "^1.6.2", "nomnom": "^1.6.2",
@ -23,16 +23,15 @@
"xdg": "^0.1.1" "xdg": "^0.1.1"
}, },
"devDependencies": { "devDependencies": {
"chai": "^1.9.0", "chai": "^1.9.1",
"mocha": "^1.18.0", "mocha": "^1.18.2"
"mocha-promise": "0.0.1"
}, },
"scripts": { "scripts": {
"test": "mocha cli.spec.js" "test": "mocha cli.spec.js"
}, },
"main": "cli.js", "main": "cli.js",
"bin": { "directories": {
"xo-cli": "bin/xo-cli" "bin": "./bin"
}, },
"preferGlobal": true, "preferGlobal": true,
"license": "AGPL3" "license": "AGPL3"