...

Text file src/go.uber.org/multierr/README.md

Documentation: go.uber.org/multierr

     1# multierr [![GoDoc][doc-img]][doc] [![Build Status][ci-img]][ci] [![Coverage Status][cov-img]][cov]
     2
     3`multierr` allows combining one or more Go `error`s together.
     4
     5## Features
     6
     7- **Idiomatic**:
     8  multierr follows best practices in Go, and keeps your code idiomatic.
     9    - It keeps the underlying error type hidden,
    10      allowing you to deal in `error` values exclusively.
    11    - It provides APIs to safely append into an error from a `defer` statement.
    12- **Performant**:
    13  multierr is optimized for performance:
    14    - It avoids allocations where possible.
    15    - It utilizes slice resizing semantics to optimize common cases
    16      like appending into the same error object from a loop.
    17- **Interoperable**:
    18  multierr interoperates with the Go standard library's error APIs seamlessly:
    19    - The `errors.Is` and `errors.As` functions *just work*.
    20- **Lightweight**:
    21  multierr comes with virtually no dependencies.
    22
    23## Installation
    24
    25```bash
    26go get -u go.uber.org/multierr@latest
    27```
    28
    29## Status
    30
    31Stable: No breaking changes will be made before 2.0.
    32
    33-------------------------------------------------------------------------------
    34
    35Released under the [MIT License].
    36
    37[MIT License]: LICENSE.txt
    38[doc-img]: https://pkg.go.dev/badge/go.uber.org/multierr
    39[doc]: https://pkg.go.dev/go.uber.org/multierr
    40[ci-img]: https://github.com/uber-go/multierr/actions/workflows/go.yml/badge.svg
    41[cov-img]: https://codecov.io/gh/uber-go/multierr/branch/master/graph/badge.svg
    42[ci]: https://github.com/uber-go/multierr/actions/workflows/go.yml
    43[cov]: https://codecov.io/gh/uber-go/multierr

View as plain text