forked from TrueCloudLab/frostfs-s3-gw
3.9 KiB
3.9 KiB
Changelog
This document outlines major changes between releases.
Unreleased
Fixed
- Handle negative
Content-Length
on put (#125) - Use
DisableURIPathEscaping
to presign urls (#125) - Use specific s3 errors instead of
InternalError
where possible (#143) grpc
schemas in tree configuration (#166)- Return appropriate 404 code when object missed in storage but there is in gate cache (#158)
- Replace part on re-upload when use multipart upload (#176)
- Fix goroutine leak on put object error (#178)
- Fix parsing signed headers in presigned urls (#182)
- Fix url escaping (#188)
Added
- Add a metric with addresses of nodes of the same and highest priority that are currently healthy (#51)
- Support dump metrics descriptions (#80)
- Add
copies_numbers
section toplacement_policy
in config file and support vectors of copies numbers (#70, #101) - Support impersonate bearer token (#81, #105)
- Reload default and custom copies numbers on SIGHUP (#104)
- Tracing support (#84, #140)
- Return bearer token in
s3-authmate obtain-secret
result (#132) - Support multiple version credentials using GSet (#135)
- Implement chunk uploading (#106)
- Add new
kludge.bypass_content_encoding_check_in_chunks
config param (#146) - Add new
frostfs.client_cut
config param (#192)
Changed
- Update prometheus to v1.15.0 (#94)
- Update go version to go1.19 (#118)
- Remove object from tree and reset its cache on object deletion when it is already removed from storage (#78)
- Finish rebranding (#2)
- Timeout errors has code 504 now (#103)
- Use request scope logger (#111)
- Add
s3-authmate update-secret
command (#131) - Use default registerer for app metrics (#155)
- Use chi router instead of archived gorlilla/mux (#149)
- Complete multipart upload doesn't unnecessary copy now. Thus, the total time of multipart upload was reduced by 2 times (#63)
- Use gate key to form object owner (#175)
Removed
- Drop
tree.service
param (now endpoints frompeers
section are used) (#133)
0.27.0 - Karpinsky - 2023-07-12
This is a first FrostFS S3 Gateway release named after Karpinsky glacier.
Fixed
- Using multiple servers require only one healthy (#12)
- Renew token before it expires (#20)
- Add generated deb builder files to .gitignore, and fix typo (#28)
- Get empty bucket CORS from frostfs (#36)
- Don't count pool error on client abort (#35)
- Handle request cancelling (#69)
- Clean up List and Name caches when object is missing in Tree service (#57)
- Don't create unnecessary delete-markers (#83)
Too many pings
error (#145)
Added
- Billing metrics (#5, #26, #29)
- Return container name in
head-bucket
response (#18) - Multiple configs support (#21)
- Bucket name resolving policy (#25)
- Support string
Action
andResource
fields inbucketPolicy.Statement
(#32) - Add new
kludge.use_default_xmlns_for_complete_multipart
config param (#40) - Return
X-Owner-Id
inhead-bucket
response (#79) - Support multiple tree service endpoints (#74, #110, #114)
Changed
- Repository rebranding (#1)
- Update neo-go to v0.101.0 (#14)
- Update viper to v1.15.0 (#14)
- Update go version to go1.18 (#16)
- Return error on invalid LocationConstraint (#23)
- Limit number of objects to delete at one time (#37)
- CompleteMultipartUpload handler now sends whitespace characters to keep alive client's connection (#60)
- Support new system attributes (#64)
- Abstract network communication in TreeClient (#59, #75)
- Changed values for
frostfs_s3_gw_state_health
metric (#91)
Older versions
This project is a fork of NeoFS S3 Gateway from version v0.26.0. To see CHANGELOG for older versions, refer to https://github.com/nspcc-dev/neofs-s3-gw/blob/master/CHANGELOG.md.