Skip to content
Projects

uber-go/multierr has 1,212 GitHub stars and 51 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-09 07:43 UTC. Last push 2024-04-29.

How these counts are measured

Combine one or more Go errors together

What you can do

  • It keeps the underlying error type hidden, allowing you to deal in error values exclusively.
  • It provides APIs to safely append into an error from a defer statement.
  • It avoids allocations where possible.
  • It utilizes slice resizing semantics to optimize common cases like appending into the same error object from a loop.

Measured star growth

in 24h
0
in 7 days
Update delayed
in 15 days
Update delayed
in 1 month
Update delayed

Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.

README.md

Original

multierr GoDoc Build Status Coverage Status

multierr allows combining one or more Go errors together.

Features

  • Idiomatic: multierr follows best practices in Go, and keeps your code idiomatic.
    • It keeps the underlying error type hidden, allowing you to deal in error values exclusively.
    • It provides APIs to safely append into an error from a defer statement.
  • Performant: multierr is optimized for performance:
    • It avoids allocations where possible.
    • It utilizes slice resizing semantics to optimize common cases like appending into the same error object from a loop.
  • Interoperable: multierr interoperates with the Go standard library's error APIs seamlessly:
    • The errors.Is and errors.As functions just work.
  • Lightweight: multierr comes with virtually no dependencies.

Installation

go get -u go.uber.org/multierr@latest

Status

Stable: No breaking changes will be made before 2.0.


Released under the MIT License.

Explore related projects