Skip to content
Permalink
9bfb9ba527
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
79 lines (50 sloc) 1.81 KB
# clean-stack
> Clean up error stack traces
Removes the mostly unhelpful internal Node.js entries.
Also works in Electron.
## Install
```
$ npm install clean-stack
```
## Usage
```js
import cleanStack from 'clean-stack';
const error = new Error('Missing unicorn');
console.log(error.stack);
/*
Error: Missing unicorn
at Object.<anonymous> (/Users/sindresorhus/dev/clean-stack/unicorn.js:2:15)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Function.Module.runMain (module.js:441:10)
at startup (node.js:139:18)
*/
console.log(cleanStack(error.stack));
/*
Error: Missing unicorn
at Object.<anonymous> (/Users/sindresorhus/dev/clean-stack/unicorn.js:2:15)
*/
```
## API
### cleanStack(stack, options?)
Returns the cleaned stack or `undefined` if the given `stack` is `undefined`.
#### stack
Type: `string | undefined`
The `stack` property of an [`Error`](https://github.com/microsoft/TypeScript/blob/eac073894b172ec719ca7f28b0b94fc6e6e7d4cf/lib/lib.es5.d.ts#L972-L976).
#### options
Type: `object`
##### pretty
Type: `boolean`\
Default: `false`
Prettify the file paths in the stack:
`/Users/sindresorhus/dev/clean-stack/unicorn.js:2:15``~/dev/clean-stack/unicorn.js:2:15`
##### basePath
Type: `string?`
Remove the given base path from stack trace file paths, effectively turning absolute paths into relative ones.
Example with `'/Users/sindresorhus/dev/clean-stack/'` as `basePath`:
`/Users/sindresorhus/dev/clean-stack/unicorn.js:2:15``unicorn.js:2:15`
## Related
- [extract-stack](https://github.com/sindresorhus/extract-stack) - Extract the actual stack of an error
- [stack-utils](https://github.com/tapjs/stack-utils) - Captures and cleans stack traces