Skip to content
This repository has been archived by the owner on Oct 19, 2022. It is now read-only.

Update dependency com_github_pkg_errors to v0.9.1 #44

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

renovate[bot]
Copy link

@renovate renovate bot commented Jan 12, 2020

This PR contains the following updates:

Package Type Update Change
com_github_pkg_errors go_repository minor v0.0.0 -> v0.9.1

Release Notes

pkg/errors

v0.9.1

Compare Source

pkg/errors 0.9.1 is a bug fix release for errors 0.9.0. This restore the previous behaviour on Cause method, this behaviour was changed on the PR: #​215 and many breaking changes was produced by that.

v0.9.0

Compare Source

errors 0.9.0 is a preparation release for a 1.0 final release. Also we were working on removing support for Go 1.8, 1.9 and 1.10 and earlier, and become compatible this package with new way of errors on Go 1.13.

We tried to move into runtime.CallerFrames but this was not possible, you can show the explanation here: Issue 188.

The motivation for do the backward compatible this package with Go 1.13 is that you can migrate the easy way for this to the new way.

Now you could use the methods, Is and As, and the Unwrap() interface like on the standard library.

The method Cause is now compatible with fmt.Errorf("%w", err) and with the Unwrap() interface.

On the same way the methods related with wrapping on this package now are compatible with Cause and Unwrap() interface.

Improvements

Bugs fixed

  • .travis.yml Adjust Go versions. Thanks @​komuw, @​aperezg
  • minor fix in an example to print Stack Trace. Thanks @​bep.
  • Remove not necessary code.
  • Clean up documentation. Thanks @​seh.

v0.8.1

Compare Source

pkg/errors 0.8.1 is a bug fix release for errors 0.8.0. It will be the last version to support Go 1.8 and below. pkg/errors 0.9 and above will require Go 1.9 for the new runtime.CallersFrames API.

pkg/errors 0.8.1 also adds one new feature, errors.WithMessagef. Ideally this would be held over til 0.9, but that complicates the switch to runtime.CallersFrames.

Improvements

Bugs fixed

v0.8.0

Compare Source

What's new since version 0.7.1

errors 0.8.0 decomposes Wrap (and Wrapf) into their component operations, namely adding a message to an error, and adding a stack trace to an error, which were previously merged into a single operation.

This is accomplished by adding two top level functions, errors.WithMessage and errors.WithStack, and rewriting Wrap and Wrapf in terms of these operations.

The motivation for this change was need to treat each of the following operations as distinct:

  • Adding a context message to an existing error without altering the stack trace.
  • Adding a stack trace to an existing error without the requirement of adding an additional message.
  • Retrieving the immediate cause of an error; popping one element of the error stack.

The addition of WithStack and WithMessage increases the surface area of this package by two methods, after long discussions at GopherCon 2016 it was felt strongly that destructuring the operation of Wrap and Wrapf was necessary.

For the moment Wrap and Wrapf remain, but depending on your feedback may be deprecated in future releases. Please leave comments via the issue link.

Thanks to @​nmiyake and @​fabstu for their assistance in preparing this release.

Bug fixes

v0.7.1

Compare Source

What's new since version 0.7.0

0.7.1 is a minor release in the 0.7 series which contains bugfixes, documentation improvements and cleanups and some internal refactoring.

Improvements

  • Rename StackTrace interface to stacktracer in docs and examples.
  • Capitalise first letter of trace in examples. Thanks @​jongillham
  • Wrapped errors now print full stacktrace.
  • Documentation improvements, #​69. Thanks @​AlekSi
  • Added benchmarks comparing stack trace performance. Fixes #​72. Thanks @​kardianos

Bug fixes

  • Fix %q format for wrapped errors. Thanks @​greensnark
  • Remove trailing newline from LICENSE file. Thanks @​vbatts
  • Tests now pass when pkg/errors is vendored. Fixes #​77. Thanks @​exp
  • Fix the %q format for errors so it puts "" around the output (caused by a bug introduced between 0.7.0 and 0.7.1). Thanks @​ncw

v0.7.0

Compare Source

What's new since version 0.6.0

0.7.0 removes the deprecated errors.Location and errors.Stack interfaces, and the errors.Fprint helper. Types returned from this package now implement the fmt.Formatter interface and can print themselves when passed to fmt.Printf and friends.

For example:

  • fmt.Printf("%s\n", err) will print the message of the error as per normal, recursive if the underlying error has a Cause method.
  • fmt.Printf(%v\n", err) operates the same as %s.
  • fmt.Printf(%+v\n", err) prints the error message as above, then prints a stack trace of the point that the error was created with errors.New, errors.Errorf, etc.

This new behaviour is described in this blog post.

Other changes in 0.7.0 include:

  • The Stacktrace() []Frame interface method was renamed to StackTrace() StackTrace. Please note the change in capitalisation. The previous interface was added in 0.6.0 so hopefully this change will not cause to many breaking changes. The name and signature of the method is not expected to change again in the future. Fixes #​50.

Bug fixes

  • README.md incorrectly reported the licence of this package as MIT, not BSD 2 clause, this has been rectified. Thanks @​anthonyfok. Fixes #​41.

v0.6.0

Compare Source

What's new since version 0.5.1

The 0.6.0 release is a transitional release aimed at exposing the error's call stack, introduced in 0.5.0, to the caller.

0.6.0 is the last release that will support the errors.Fprint helper function. This function will be removed in version 0.7 and will be replaced with a more flexible option based on the fmt.Formatter interface.

Many thanks to @​ChrisHines for inspiration, via his go-stack/stack package, and for his thoughtful review feedback.

Deprecation notice

The following symbols have been deprecated and will be removed in future releases.

  • errors.Fprintf will be removed in the 0.7 release. Read on for more details.
  • The Location interface,
type location interface {
        Location() (string, int)
}

is deprecated and will not be recognised in future releases. The replacement is

fmt.Sprintf("%+v", err.Stacktrace()[0])

That is, pass the topmost element of error's stack trace (assuming it has a Stacktrace() []Frame method) to fmt and print it with the %+v verb.

  • The Stack interface,
type stack interface {
        Stack() []uintptr
}

is deprecated and will not be recognised in future releases. Callers should use the new Stacktrace interface described below.

New features

  • Stacktrace interface. As a replacement for the deprecated Stack() []uintptr interface, implementations in this package now support a Stacktrace interface
type Stacktrace interface {
         Stacktrace() []Frame
}

Calling this method returns a slice of Frame values, the most recent on the top. See #​37

  • Frame values replace raw uintptr's (representing program counters) providing a type which implement the fmt.Formatter interface, which in turn exposes various aspect of a call frame (name, source file and line, etc) via the fmt package. See also #​37
  • The name of the formal parameter to Wrap and Wrapf has been renamed from cause to err. This reflects the nature of these functions; to create a stack of errors. Apparently this also helps editor auto completion. Thanks @​matryer. Fixes #​32

v0.5.1

Compare Source

Bugs fixed

  • Fix a bug whereby errors returned by New, Errorf, Wrap, Wrapf were not comparable with ==. Thanks to @​stevvooe. Fixes #​29

v0.5.0

Compare Source

What's new

  • New, Errorf, Wrap, and Wrapf, now store the stack trace of their caller (currently limited to a depth of 32). This can be retrieved by asserting for the following interface
type Stack interface {
        Stack() []uintptr
}

The resulting []uintptr is the same format as runtime.Callers. At the moment there are no helpers to inspect this information.

v0.4.0

Compare Source

What's new

  • Remove the errors.Print helper, callers should use errors.Fprint(os.Stderr, err) as a replacement. See #​23 for details
  • README.md now has syntax highlighting. Thanks @​mustafaakin
  • Package short description has been revised based. See #​24 for details.

v0.3.0

Compare Source

What's new

v0.2.0

Compare Source

What's new

Bug fixes since 0.1.0

  • Wrap would incorrect interpret fmt like verbs as format arguments, corrupting the error message. Thanks @​enisoc
  • errors.loc.Location (and errors.Fprint) now more reliably detect the full package path, even in the presence of vendoring or multiple GOPATH segments. Thanks @​ChrisHines. Fixes #​8

Renovate configuration

📅 Schedule: At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

♻️ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by WhiteSource Renovate. View repository job log here.

@renovate renovate bot force-pushed the renovate/com_github_pkg_errors-0.x branch from 6dc5930 to 5b99f29 Compare January 14, 2020 21:23
@renovate renovate bot changed the title Update dependency com_github_pkg_errors to v0.9.0 Update dependency com_github_pkg_errors to v0.9.1 Jan 14, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant