@semantic-release/error

2.2.0 • Public • Published

@semantic-release/error

Error type used by all semantic-release packages.

Travis Codecov Greenkeeper badge

Errors of type SemanticReleaseError or an inherited type will be considered by semantic-release as an expected exception case (no release to be done, running on a PR etc..). That indicate to the semantic-release process to stop and exit with the 0 success code.

Any other type of error will be considered by semantic-release as an unexpected error (i/o issue, code problem etc...). That indicate to the semantic-release process to stop, log the error and exit with the 1 failure code.

Usage

const SemanticReleaseError = require('@semantic-release/error');
 
// Default
throw new SemanticReleaseError();
 
// With error message
throw new SemanticReleaseError('An error happened');
 
// With error message and error code
throw new SemanticReleaseError('An error happened', 'ECODE');
 
// With error message, error code and details
throw new SemanticReleaseError('An error happened', 'ECODE', 'Here is some suggestions to solve this error.');
 
// With inheritance
class InheritedError extends SemanticReleaseError {
  constructor(message, code, newProperty, details) {
    super(message);
    Error.captureStackTrace(this, this.constructor);
    this.name = this.constructor.name;
    this.code = code;
    this.details = details;
    this.newProperty = 'newProperty';
  }
}
 
throw new InheritedError('An error happened', 'ECODE', 'Here is some suggestions to solve this error.');

install

npm i @semantic-release/error

Downloadsweekly downloads

100,659

version

2.2.0

license

MIT

homepage

github.com

repository

Gitgithub

last publish

collaborators

  • avatar
  • avatar
  • avatar
  • avatar
  • avatar
Report a vulnerability