-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Drop ResolveNeoFSFailures #413
Conversation
890364b
to
9cba1b6
Compare
@roman-khimov @cthulhu-rider @notimetoname I want to attract your attention to one question. I'm almost done the PR, but it perfectly works only for Be honest, I'm completely not exiting about it, because we should revert/update it in future. When minimal Go version will be I tend to think, I'm missing some good solution to wrap multiple errors (and correct check them with errors.Is) in How I understand setting Go 1.20 as minimum version in SDK is not an option, right? |
Yes, we can't demand it for any of our components, but especially in SDK, it can be used by random people and we can't expect them to have 1.20. So we absolutely need this compatibility code that will eventually be taken out. |
Sweet dreams but dont think so.
Me too. The only thing i would request is to leave as many reminders to fix it when 1.22 is out as possible (comments, issues, links/TODOs/etc). |
Agree, I will add them when we decide what and how we manage to this. |
We just need an issue to track this. And we better keep commits the way they are (using new APIs and then changing to old ones), it'd be trivial to revert then. |
Sure, I will make it |
9cba1b6
to
ed1ff35
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Now consider some ResObjectDelete
, why does it have a statusRes
inside when it's no longer being used? It can't have anything but successful value, because all the other codes are returned as errors. Then consider something like ResContainerDelete
, is it needed at all with the new scheme? Let's simplify these things as well.
i only had time to briefly review the proposed changes i think |
We need some type for generic API error and as we have (almost) all of them in |
not a good option to me: |
|
yes, it does, there is https://pkg.go.dev/github.com/nspcc-dev/neofs-sdk-go@v1.0.0-rc.8/client/status#Status interface provided by all protocol statuses incl. errors (although empty now, but can be extended). That's enough for any party. Network errors occur in client games only i don't mind to have API error group in |
ed1ff35
to
c14dc05
Compare
c14dc05
to
4ef4ffe
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See #413 (review) as well.
d876fb2
to
516df0a
Compare
516df0a
to
ed1536f
Compare
67af63a
to
e07c8fb
Compare
Signed-off-by: Evgenii Baidakov <evgenii@nspcc.io>
Signed-off-by: Evgenii Baidakov <evgenii@nspcc.io>
TestFromStatusV2 and TestToStatusV2 have the identical testcases and code to check them Signed-off-by: Evgenii Baidakov <evgenii@nspcc.io>
Signed-off-by: Evgenii Baidakov <evgenii@nspcc.io>
e07c8fb
to
95ecf9f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+583 −817
--- looks better now
Please mention #405 in commits/PR, because this patch set fixes it as well.
Signed-off-by: Evgenii Baidakov <evgenii@nspcc.io>
Signed-off-by: Evgenii Baidakov <evgenii@nspcc.io>
Signed-off-by: Evgenii Baidakov <evgenii@nspcc.io>
Signed-off-by: Evgenii Baidakov <evgenii@nspcc.io>
Signed-off-by: Evgenii Baidakov <evgenii@nspcc.io>
Should be reverted/updated when minimum version of Go will be set to 1.20 Signed-off-by: Evgenii Baidakov <evgenii@nspcc.io>
Fixes #405 Signed-off-by: Evgenii Baidakov <evgenii@nspcc.io>
Signed-off-by: Evgenii Baidakov <evgenii@nspcc.io>
a91a957
to
49bc3b7
Compare
We've got a number of `Res*` things with a single member only. They were somewhat useful before #413 (to get request status), but now they provide zero value and just complicate the code using these APIs. Notice also that this makes `client` interface a little close to `pool` interface which is nice wrt. #380.
It is possible and safe after nspcc-dev/neofs-sdk-go#413. Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
close #406
fixes #405