eslint-plugin-code-safety
v1.0.1
Published
An eslint plugin that enforces the proper handling of modules and functions that can throw errors
Readme
ESLINT Code Safety plugin
This plugin's creation came to be due to many frustrations I have with the JavaScript language and the many hours I've lost due to bugs caused by the looseness of the language and the lack of safeguards and warnings by the LSP.
I have migrated my study efforts in 2024 to working with Golang where any code in the standard library that can throw errors will return an error object and force me to handle my errors.
Coming back to JavaScript and inspired by the Golang philosophy of always being explicit about error handling I looked up a list (that is currently not wholistic but a work in progress) of all the standard JavaScript APIs that can throw errors and am working my way to create rules that catch any malpractices from rising from the depths of old code
Warning
While I did program the rule no-uncaught-eval, it is a failsafe in case you must use evals in your code, however I strongly recommend that you use the no-eval rule from ESLint's standard rules because there are vulnerabilities that can be exploited with it, check this owasp article about it
Currently implemented rules
Planed features
All the planed features can be found in the docs folder, if there's a rule document there and no rule implemented, that's a planned feature
Testing
I'm writing test cases for all the rules to verify that they work properly using the ESLint RuleTester API, all tests can be found in the tests folder
Contact and feedback
Feel free to create an issue on the github repo or contact me via email at [email protected]
