Skip to content

Releases: nspcc-dev/neofs-s3-gw

v0.32.0

01 Oct 10:13
1f2abd9
Compare
Choose a tag to compare

Added

  • placement_policy.locations config option (#989)
  • Placement policy search using contract (#999)

Fixed

  • Reading chunked payload if header content-encoding: aws-chunked is not set (#1009)

v0.31.1

13 Sep 12:05
808be4d
Compare
Choose a tag to compare

Changed

  • Documentation for extensions and unsupported features (#990, #991, #995, #998)
  • Go 1.22+ is required to build now (#927)
  • stream_timeout default timeout from 10s to 60s (#973)
  • Multipart objects are signed directly by gate now (#1001)

Fixed

  • Incorrect locked object deletion (#992)
  • Potential version ID collisions in some cases (#993)
  • Excessive memory use when working with small objects (#997)

Updated

  • github.com/minio/sio from v0.4.0 to v0.4.1 (#927)
  • github.com/nats-io/nats.go from v1.34.0 to v1.37.0 (#927)
  • github.com/nspcc-dev/tzhash from v1.8.1 to v1.8.2 (#927)
  • github.com/prometheus/client_golang from v1.20.0 to v1.20.2 (#927)
  • github.com/urfave/cli/v2 from v2.27.2 to v2.27.4 (#927)

v0.31.0

20 Aug 11:59
ed731b0
Compare
Choose a tag to compare

Added

  • Use HKDF salt and info (#972)
  • Allow addresses to be used in EACLs (#976)

Updated

  • github.com/nspcc-dev/neofs-sdk-go dependency from v1.0.0-rc.12 to v1.0.0-rc.12.0.20240807160341-3528eb5bb1cc

Changed

  • Single rpc_endpoint config option replaced with multiple endpoints fschain.endpoints option (#968)
  • Go 1.21+ is required to build now (#811)
  • Replaced HTTP 500 with HTTP 400 if user.ID decode failed (#983)

Updated

  • github.com/nspcc-dev/neo-go dependency from v0.106.2 to v0.106.3 (#811)
  • github.com/urfave/cli/v2 dependency from v2.3.0 to v2.27.2 (#811)
  • github.com/nspcc-dev/neofs-contract dependency from v0.19.2-0.20240610103236-d50c8e0c9396 to v0.20.0 (#811)
  • golang.org/x/crypto dependency from v0.21.0 to v0.26.0 (#811)
  • github.com/nspcc-dev/tzhash dependency from v1.8.0 to v1.8.1 (#811)
  • github.com/prometheus/client_golang dependency from v1.19.0 to v1.20.0 (#811)
  • google.golang.org/protobuf dependency from v1.33.0 to v1.34.2 (#811)
  • github.com/panjf2000/ants/v2 dependency from v2.5.0 to v2.10.0 (#811)
  • github.com/aws/aws-sdk-go dependency from v1.50.27 to v1.55.5 (#811)
  • github.com/spf13/viper dependency from v1.18.2 to v1.19.0 (#811)
  • github.com/nats-io/nats.go dependency from v1.31.0 to v1.34.0 (#811)
  • google.golang.org/grpc dependency from v1.62.0 to v1.62.1 (#811)
  • github.com/minio/sio dependency from v0.3.0 to v0.4.0 (#811)

Fixed

  • Save hashless object header in SpitV2 (#974)
  • Clean actual object version (#970)

Updating from 0.30.1

  • Old access boxes are incompatible with this version.
  • The gate compatible only with node 0.43.0+.

Notice that the configuration parameter fschain.endpoints contains multiple endpoints.
For migration, you should update config from old notation

rpc_endpoint: http://some-host:30333

to the new one

fschain:
  endpoints:
    - http://some-host:30333

v0.30.1

19 Jun 11:12
0e94b57
Compare
Choose a tag to compare

Added

  • ARM64 and Darwin binaries (#949)

Changed

  • Split object scheme for multipart uploads to v2 scheme (#957)
  • Timestamp is hidden if program is not running in TTY (#965)

Fixed

  • Inability to use "*" in ACLs (#958)
  • Useless EACL record (#961)
  • Incorrect owner returned for versioned/multipart objects (#957)
  • Incorrect size retured for encrypted objects (#957)
  • OPTIONS handling for pre-auth requests (#964)

Updated

  • Documentation (#946)
  • NeoFS SDK to RC12 (#943, #940, #960)
  • golang.org/x/net dependency from 0.21.0 to 0.23.0 (#948)
  • NeoGo dependency to 0.106.2 (#956, #960, #963)

v0.30.0

27 Mar 08:43
ca52b60
Compare
Choose a tag to compare

Added

  • Preallocate buffers to object uploads (#835)
  • Support for aws-chunked (#914)
  • Store CORS to the object (#890)

Changed

  • Go 1.20+ is required to build now, using 1.22 by default (#928, #933)
  • Limit objects amount for DeleteObjects (#849)
  • Actualize CODEOWNERS (#942)
  • Passing an empty meta parameter value raises "Your metadata headers are not supported." error (#848)
  • Sdk optimizations (#839)
  • Store bucket owner pub key in container attributes. It helps to process ACL correctly (#915)

Updated

  • Documentation about ETag (#856)
  • Use SDK with pool base multi sessions (#855)
  • Documentation about Authenticated Users group (#871)
  • SDK to use slicing optimization (#923)
  • Don't use neofs-crypto directly in neofs/tree (#932)
  • build(deps): bump golang.org/x/net from 0.14.0 to 0.17.0 (#851)
  • build(deps): bump github.com/nats-io/nats-server/v2 from 2.7.4 to 2.9.23 (#867)
  • build(deps): bump google.golang.org/grpc from 1.57.0 to 1.57.1 (#880)
  • build(deps): bump github.com/nats-io/nkeys from 0.4.4 to 0.4.6 (#894)
  • build(deps): bump golang.org/x/crypto from 0.14.0 to 0.17.0 (#917)
  • build(deps): bump google.golang.org/protobuf from 1.31.0 to 1.33.0 (#935)

Removed

  • 'v' from app version (#922)
  • Re-slicing for multipart (#931)

Fixed

  • Makefile: Fix sync-tree (#941)
  • Correct filePath attribute filter using, storing only uniq pubKey in ACL target rule (#876)
  • Public read acl results in full control permission (#866)
  • Restrict presigned URL lifetime (#883)
  • Return unsupported error on GetObjectTorrent (#884)
  • Return unsupported error on GetBucketPolicyStatus (#886)
  • Return unsupported error on PutPublicAccessBlock (#887)
  • Return the correct error, if x-amz-credential is not provided (#892)
  • Not accurate error message for invalid authenticated requests (#882)
  • Return error if no tags in bucket (#924)
  • Return correct error on invalid grantee type (#926)
  • Sort parts by number and server creation time, for correct detection part if it was re-uploaded (#929)
  • Return correct error on lock configuration check (#888)
  • Return unimplemented error on GetPublicAccessBlock (#896)
  • Return unimplemented error in PutBucketLogging (#925)
  • Return not supported error for PutObjectLegalHold command if OFF state (#889)
  • Check x-amz-expires header on maximum border (#893)
  • Handle bad user id more gracefully (#879)

v0.29.0

28 Sep 16:12
v0.29.0
aa37177
Compare
Choose a tag to compare

Added

  • Experimental "internal-slicer" option to prepare objects on the gateway side (#831)

Changed

  • Go 1.19+ is required to build now, using 1.21 by default (#829)
  • NeoGo dependency updated to 0.102.0 (#829)

Removed

  • Setting System EACL rules (#825)
  • NoOp compatibility resolver, RPC endpoint configuration is mandatory now (#830)

v0.28.2

13 Sep 07:51
v0.28.2
49d1247
Compare
Choose a tag to compare

Fixed

  • Panic when creating some objects (#821)
  • SDK updated to fix node health management issues and count statistics more appropriately (#823)

v0.28.1

08 Sep 08:28
v0.28.1
f9c431c
Compare
Choose a tag to compare

Updated

  • neofs-sdk-go to v1.0.0-rc.11

v0.28.0

25 Aug 10:48
v0.28.0
d6fba1d
Compare
Choose a tag to compare

Fixed

  • Authmate panic in case of some missing parameters (#794)
  • Missing reconnects in case of RPC connection failure (#796)
  • Failure to complete multipart upload of ACL-enabled object (#807)

Added

  • NoOpResolver as backward compatibility for case when rpc_endpoint/S3_GW_RPC_ENDPOINT param is empty in config, it will be removed in 0.29.0 (#807)

Changed

  • Improved documentation (#795)
  • Renamed API errors package (#803)
  • Docker image is more lightweight now (#804)
  • Option rpc_endpoint in yaml config or S3_GW_RPC_ENDPOINT in env config is mandatory (#807).
  • SDK dependency updated to RC10 (#807)
  • Improved data buffering (#807)

Removed

  • Options resolve_order in yaml config and S3_GW_RESOLVE_ORDER in env (#807).

v0.27.1

15 Jun 12:00
v0.27.1
62d96af
Compare
Choose a tag to compare

Fixed

  • authmate panic (#787)
  • wrong return code logged for PutBucketVersioning (#792)

Changed

  • SDK dependency updated to RC9+ (#785, #789)