Implement AppendObject() API#2082
Conversation
1686737 to
9b86efc
Compare
ac12297 to
728e2ce
Compare
728e2ce to
90fdc3d
Compare
|
This PR fixes the checksum behavior. @klauspost - I also added a few missing things in the checksum behavior as per AWS S3 behavior. Server side is also changing in the Append() PR itself. |
This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [github.com/minio/minio-go/v7](https://github.com/minio/minio-go) | require | patch | `v7.0.88` -> `v7.0.90` | --- ### Release Notes <details> <summary>minio/minio-go (github.com/minio/minio-go/v7)</summary> ### [`v7.0.90`](https://github.com/minio/minio-go/releases/tag/v7.0.90): Bugfix v7.0.90 [Compare Source](minio/minio-go@v7.0.89...v7.0.90) #### What's Changed - Add anonymous chunked encoding with trailing headers by [@​klauspost](https://github.com/klauspost) in minio/minio-go#2084 - Implement AppendObject() API by [@​harshavardhana](https://github.com/harshavardhana) in minio/minio-go#2082 - Update x/net version by [@​BorjaOuterelo](https://github.com/BorjaOuterelo) in minio/minio-go#2085 - Rety iterators by [@​tlyons-cs](https://github.com/tlyons-cs) in minio/minio-go#2087 - Add function for getting creds of remote client by [@​shtripat](https://github.com/shtripat) in minio/minio-go#2089 #### New Contributors - [@​BorjaOuterelo](https://github.com/BorjaOuterelo) made their first contribution in minio/minio-go#2085 - [@​tlyons-cs](https://github.com/tlyons-cs) made their first contribution in minio/minio-go#2087 **Full Changelog**: minio/minio-go@v7.0.89...v7.0.90 ### [`v7.0.89`](https://github.com/minio/minio-go/releases/tag/v7.0.89): Bugfix Release [Compare Source](minio/minio-go@v7.0.88...v7.0.89) #### What's Changed - add PurgeOnDelete to versioning config by [@​poornas](https://github.com/poornas) in minio/minio-go#2074 - Adds `TokenRevokeType` field to credential providers. by [@​taran-p](https://github.com/taran-p) in minio/minio-go#2075 - make downtime info as map to denote per target info by [@​Praveenrajmani](https://github.com/Praveenrajmani) in minio/minio-go#2079 - update deps and move CI/CD to go1.23, go1.24 by [@​harshavardhana](https://github.com/harshavardhana) in minio/minio-go#2080 - update golint version by [@​harshavardhana](https://github.com/harshavardhana) in minio/minio-go#2083 #### New Contributors - [@​taran-p](https://github.com/taran-p) made their first contribution in minio/minio-go#2075 **Full Changelog**: minio/minio-go@v7.0.88...v7.0.89 </details> --- ### Configuration 📅 **Schedule**: Branch creation - "* 0-3 * * *" (UTC), Automerge - "* 0-3 * * *" (UTC). 🚦 **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. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMzMuNSIsInVwZGF0ZWRJblZlciI6IjM5LjIzMy41IiwidGFyZ2V0QnJhbmNoIjoiZm9yZ2VqbyIsImxhYmVscyI6WyJkZXBlbmRlbmN5LXVwZ3JhZGUiLCJ0ZXN0L25vdC1uZWVkZWQiXX0=--> Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/7495 Reviewed-by: Earl Warren <[email protected]> Co-authored-by: Renovate Bot <[email protected]> Co-committed-by: Renovate Bot <[email protected]>
| func newHook(source, hook io.Reader) io.Reader { | ||
| if hook == nil { | ||
| return &hookReader{source: source} | ||
| return source |
There was a problem hiding this comment.
this change cause us headaches. because of this change minio is closing the passed reader.
so if you pass a io.File to the PutObject function, then minio will close it.
Line 681 in 456f9b2
This is a breaking api behavior
There was a problem hiding this comment.
Go http client closes the body, that is exactly what we do in this SDK. What is the problem?
There was a problem hiding this comment.
@harshavardhana It is a bit "bad manner" to close the body - especially since you aren't given an io.ReadCloser, but an io.Reader you wouldn't expect it to be closed.
I guess the wrapper prevented that from happening before.
There was a problem hiding this comment.
the problem is that' it's not documented and changed in a patch release. it's also not consistent for all call sites.
`ChecksumMode` was probably a mistake to add in minio#2082 - but now we've committed to it. It must however match this: https://github.com/miniohq/eos/blob/cc3c249d4ecaeb26d503fd264c9fd7df72b0b0d2/cmd/api-response.go#L380 Otherwise it is not picked up as metadata in list responses.
No description provided.