Skip to content

skeptycal/errorlogger

Repository files navigation

errorlogger

Tricky and fun utilities for Go programs.


GitHub Workflow Status Codecov

Contributor Covenant

Twitter Follow GitHub followers


Getting Started

Prerequisites

  • Go - I recommend the latest stable release. At least 1.18 is required for generic features.
  • Git - I recommend the latest stable release.
  • GitHub CLI - you can use git on the command line if you wish, but the github cli is very nice ...

Developed with Go 1.16.4. Updated to Go 1.18. Go is extremely backwards compatible and semver stable. Nearly any v1.x should work fine.


Installation

To download the repo and use it as a dependency in your module:

$ go get github.com/skeptycal/errorlogger

To build and install this package as a utility (if it has a main package) on your machine so you can use it from the command line:

$ gh repo clone skeptycal/errorlogger

$ cd errorlogger

# test results and coverage info
$ ./go.test.sh

# build the application with race detection enabled.
$ go build -race

# install as a utility package
$ go install

Use Template

To use this repo as a template for your own project:

$ gh repo create -y --public --template "https://github.com/skeptycal/errorlogger"

Contributing

To clone this repo to test and contribute, use git clone or gh repo clone.

$ gh repo clone skeptycal/errorlogger

$ cd errorlogger

# or choose a name or issue you wish
$ git branch -b dev

Use the Issues and PR templates on the GitHub repo page to contribute.


Basic Usage

This is a copy of the example script available in the cmd/example/errorlogger folder:

package main

import "github.com/skeptycal/errorlogger"

func main() {
    errorlogger.Example()
}

To try it out:

# change to the sample folder
$ cd cmd/example/errorlogger

# run the main.go program
$ go run ./main.go

Code of Conduct and Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us. Please read the Code of Conduct for details before submitting anything.


Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.


Contributors and Inspiration

  • Michael Treanor (GitHub / Twitter) - Initial work, updates, maintainer
  • Francesc Campoy - Inspiration and great YouTube videos!

See also the list of contributors who participated in this project.


License

Licensed under the MIT https://opensource.org/licenses/MIT - see the LICENSE file for details.