UNPKG

coffeelint-callback-handle-error

Version:

Coffeelint rule finds instances of error objects passed through a callback not being handled

68 lines (51 loc) 1.48 kB
# coffeelint-callback-handle-error CoffeeLint rule that finds instances of error objects passed through a callback function without being handled. Ex: Any of these code blocks do not handle their error variable: ```coffeescript fs.stat '/invalid/path/to/file', (err, stats)-> console.log stats return ``` ```coffeescript fs.stat '/invalid/path/to/file', (err, stats)-> # this err is not handled and is instead overwritten by the next stat fs.stat '/some/other/invalid/file', (err, stats2)-> if err console.log err return return ``` These examples will pass, since their error variables are handled: ```coffeescript fs.stat '/invalid/path/to/file', (err, stats)-> if err console.log err return ``` ```coffeescript doStuff 123, (callback)-> fs.stat '/invalid/path/to/file', (err, stats)-> callback err return return ``` ## Installation ```sh npm install coffeelint-callback-handle-error ``` ## Usage To get started, insert this configuration somewhere in your `coffeelint.json` file: ```json "callback_handle_error": { "module": "coffeelint-callback-handle-error" } ``` ## Configuration This plugin has one custom configurable option. ### `patterns`: `["^err(or)?", "[Ee]rr(or)?$"]` A list of regular expressions used to match parameter names for detecting error objects in function parameters. The default setting looks for any variable which starts with "err"/"error" or ends with "err"/"Err" or "error"/"Error".