Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

eslint-plugin-try-catch-failsafe

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

eslint-plugin-try-catch-failsafe

Make sure to use try-catch to wrap up some dangerous actions!

  • 0.1.4
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
34
decreased by-94.43%
Maintainers
1
Weekly downloads
 
Created
Source

eslint-plugin-try-catch-failsafe

Make sure to use try-catch to wrap up some dangerous actions!

Installation

Use package manager to install this plugin.

npm install --save-dev eslint-plugin-try-catch-failsafe
yarn add -D eslint-plugin-try-catch-failsafe
pnpm add -D eslint-plugin-try-catch-failsafe

Usage

Add this plugin to your ESLint configuration.

{
  "extends": [
    "plugin:try-catch-failsafe/default"
  ]
}

Rules

try-catch-failsafe/json-parse

  • Default: error
  • Fixable: false

Make sure to use try-catch to wrap up JSON.parse. Notice that the JSON.parse in catch or finally block may also throw an error in JavaScript, so we should wrap them up too.

// ❌ Error
JSON.parse('{"foo": "bar"}');

// ❌ Error
try {
  // some code that may throw an error
} catch (e) {
  JSON.parse('{"foo": "bar"}');
}

// ❌ Error
try {
  // some code that may throw an error
} finally {
  JSON.parse('{"foo": "bar"}');
}

// ✅ OK
try {
  JSON.parse('{"foo": "bar"}');
} catch (e) {
  console.error(e);
}

// ✅ OK
try {
  // some code that may throw an error
} finally {
  try {
    JSON.parse('{"foo": "bar"}');
  } finally {}
}

If you are confident that the JSON.parse will not throw an error, you can disable this rule.

try-catch-failsafe/new-url

  • Default: error
  • Fixable: false

Make sure to use try-catch to wrap up new URL(). Notice that the new URL() in catch or finally block may also throw an error in JavaScript, so we should wrap them up too.

// ❌ Error
new URL('');

// ❌ Error
try {
  // some code that may throw an error
} catch (e) {
  new URL('');
}

// ❌ Error
try {
  // some code that may throw an error
} finally {
  new URL('');
}

// ✅ OK
try {
  new URL('');
} catch (e) {
  console.error(e);
}

// ✅ OK
try {
  // some code that may throw an error
} finally {
  try {
    new URL('');
  } finally {}
}

If you are confident that the new URL() will not throw an error, you can disable this rule.

Keywords

FAQs

Package last updated on 08 Feb 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc