GitHunt
RO

rockstorm101/go-errors-errors-debian-pkg

Debian package of go-errors/errors (https://github.com/go-errors/errors)

go-errors/errors

Build Status

Package errors adds stacktrace support to errors in go.

This is particularly useful when you want to understand the state of execution
when an error was returned unexpectedly.

It provides the type *Error which implements the standard golang error
interface, so you can use this library interchangably with code that is
expecting a normal error return.

Usage

Full documentation is available on
godoc, but here's a simple
example:

package crashy

import "github.com/go-errors/errors"

var Crashed = errors.Errorf("oh dear")

func Crash() error {
    return errors.New(Crashed)
}

This can be called as follows:

package main

import (
    "crashy"
    "fmt"
    "github.com/go-errors/errors"
)

func main() {
    err := crashy.Crash()
    if err != nil {
        if errors.Is(err, crashy.Crashed) {
            fmt.Println(err.(*errors.Error).ErrorStack())
        } else {
            panic(err)
        }
    }
}

Meta-fu

This package was original written to allow reporting to
Bugsnag from
bugsnag-go, but after I found similar
packages by Facebook and Dropbox, it was moved to one canonical location so
everyone can benefit.

This package is licensed under the MIT license, see LICENSE.MIT for details.

Languages

Go100.0%

Contributors

MIT License
Created January 24, 2018
Updated March 27, 2018