Releases: Southclaws/fault
Releases · Southclaws/fault
v0.8.1
What's Changed
- fix De-duplication logic causes some sentinel error patterns to result in error chain losses #41 by @Southclaws in #43
- fixes Pass ...Wrapper list to New constructor #31 by @Southclaws in #42
Full Changelog: v0.8.0...v0.8.1
v0.8.0
v0.7.0
What's Changed
- feat: allow to get all tags in wrapped errors by @matdurand in #39
- chore: create an example of an API server using fault by @matdurand in #35
Full Changelog: v0.6.1...v0.7.0
v0.6.1
What's Changed
- Checking nil contexts in fctx by @semihbkgr in #33
- remove go.work and fix locations for inlined functions by @Southclaws in #37
- fctx: allow to pass 'kv strings' to fctx.With by @the-goodies in #36
New Contributors
- @semihbkgr made their first contribution in #33
- @the-goodies made their first contribution in #36
Full Changelog: v0.6.0...v0.6.1
v0.6.0
What's Changed
- issue 28: use fault.new location for formatting by @matdurand in #29
- issue 28: fix wrong location of some errors by @matdurand in #30
New Contributors
- Thanks @matdurand for the improvements to error chain flattening #29
Full Changelog: v0.5.1...v0.6.0
v0.5.1: Cleaner messages and sane map mutation
This release addresses a quality-of-life issue with error messages and a bug with fctx maps being mutated unexpectedly.
- Fault's top-level
.Error()
method will now filter out non-messages like<fctx>
so instead ofsome error: <fctx>: <fctx>: <fctx>: <ftag>: root cause
you'll just seesome error: root cause
- The underlying map used to store the key-value metadata in fctx context and error objects is now copied when wrapped so the original isn't modified.
v0.5.0: Better flattening and nil safety
- Does not panic when passed a nil error (#20)
- Resolves empty error messages in certain cases (#7, #16)
- Yield a more logical error chain for errors wrapped with
fmt.Errorf
andpkg/errors
(#24) - Don't duplicate messages even when the
.Error()
implementation includes a duplicate of the nested error (#24) - Simplify the
Flatten
output to just a slice of steps in the error chain, no moreRoot
as index[0]
already contains the root (#11)
v0.4.4: verbs and more tests
- More correctly implemented
Format
by respecting the+
flag of the%v
verb %s
will simply output.Error()
- Written a bunch more tests to cover various format outputs
v0.4.3: Flattening and formatting
- More logical behaviour of
Format
Error()
will now not duplicate error messages- Minimum Go version put back to 1.18
- Lots more tests to cover Flatten, Format and Error behaviour
v0.4.2: zero dependencies
- Moved dependencies to a sub-module, Fault now requires no external libraries
- Automated and passing tests (thanks to @toqueteos)