Giter Club home page Giter Club logo

Comments (5)

rajender avatar rajender commented on June 24, 2024

Looks like Go1.13 may have more error inspection capabilities. We should consider it part of this.

golang/go#29934

https://godoc.org/golang.org/x/xerrors

https://tip.golang.org/pkg/errors/
https://tip.golang.org/pkg/fmt/#Errorf

from aws-sdk-go-v2.

jasdel avatar jasdel commented on June 24, 2024

Thanks for the suggestion @rajender. I agree taking advantage of xerrors package with 1.13 would help to standardize the SDK's error chaining. Right now this chaining is an odd mix of hand rolled chain, and github.com/pkg/errors.

This would mean the SDK's minimum supported version would raise go Go 1.13. Since the SDK is still in developer preview, this is may not be a deal breaker, but 1.13 most likely won't release until around August. The SDK may need to consider back filling support for xerrors for older version of Go if 1.13 ends up being too recent of a change when the SDK does GA release.

from aws-sdk-go-v2.

jasdel avatar jasdel commented on June 24, 2024

APIErrors returned from an API operation call should probably include the metadata for the operation request/response that failed. This context would help will logging, and identifying context of a failed operation call.

Does it make sense to expose this behavior to all SDK errors that are returned from an operation call? One way this could happen is the operation's Send potentially could wrap the underlying error to ensure context is maintained.

from aws-sdk-go-v2.

jasdel avatar jasdel commented on June 24, 2024

The SDK's error handling refactor should be built with Unwrap in mind so that layering of errors can easily be peeled apart.

from aws-sdk-go-v2.

jasdel avatar jasdel commented on June 24, 2024

#487 made significant changes to the SDK's awserr.Error and internal error wrapping. The SDK now supports Unwrap in numerous places in the SDK.

There are still several instances of SDK logic errors that are using the awserr.Error Code wrapper. Ideally the SDK doesn't use awserr.Error for any non-API error response. All SDK logic errors are typed, or generic errors. The outstanding SDK logic awserr.Error usage are a good target for further burn down.

from aws-sdk-go-v2.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.