Security News
Weekly Downloads Now Available in npm Package Search Results
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.
When you have an error-ish but what you really want is an Error.
There are three main use cases for Errorish:
Error
has a message
, name
, and stack
properties.Error
class to store an identifying label
, a source error
, and/or associated data
.Exception
is an Error extending class with additional label
, error
and data
fields.ensure
ensures any
is an Error
, otherwise creating one -it can optionally include a normalization step, enabled by default.normalize
ensures an Error
has a message
, name
, and stack
properties -filling them if they're not defined.capture
runs Error.captureStackTrace
if running in V8
to clean up the error stack trace.Exception
See documentation for Exception
.
Exception
is an Error extending class that can store an identifying label
, the source error
that caused it and/or additional associated data
. Exception
also comes with several static and instance methods.
import { Exception } from 'errorish';
try {
try {
throw new Error('Source');
} catch (err) {
// throws with label
throw new Exception(['label', 'message'], err, { code: 401 });
}
} catch (err) {
// throws without label
throw new Exception(err.message, err, { code: 500 })
}
ensure
Ensure will return its first argument if an instance of Error
is passed as such, otherwise instantiating and returning an Exception
.
import { ensure } from 'errorish';
ensure('foo'); // Error: foo
ensure(new Error('foo')); // Error: foo
ensure({ message: 'foo' }); // Error: foo
normalize
See documentation for normalize
.
Normalization fills an error's message
, name
, and stack
property when empty. It's performed by default by ensure
, but it can also be run independently.
import { normalize } from 'errorish';
normalize(new Error()); // Error: An error occurred
normalize(new Error(), { message: 'Foo bar' }); // Error: Foo bar
capture
See documentation for capture
.
Captures the stack trace on Node and Chromium browsers.
import { capture } from 'errorish';
capture(new Error());
FAQs
When you have an error-ish but what you really want is an Error
The npm package errorish receives a total of 2,527 weekly downloads. As such, errorish popularity was classified as popular.
We found that errorish demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
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.
Security News
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.
Security News
A Stanford study reveals 9.5% of engineers contribute almost nothing, costing tech $90B annually, with remote work fueling the rise of "ghost engineers."
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.