github versity/versitygw v1.9.0

3 hours ago

Changelog

  • acc14a9 change cors check order ; test
  • 783381a chore(deps): bump actions/download-artifact from 6 to 8
  • e836eb7 chore(deps): bump actions/upload-artifact from 6 to 7
  • 3742fa6 chore(deps): bump github/codeql-action from 4.37.9 to 4.38.0
  • 8162344 chore(deps): bump github/codeql-action from 4.38.0 to 4.38.1
  • a37aead chore(deps): bump github/codeql-action from 4.38.1 to 4.38.2
  • 3daad06 chore(deps): bump the dev-dependencies group with 11 updates
  • 0e61bd6 chore(deps): bump the dev-dependencies group with 21 updates
  • 3798f8f chore(deps): bump the dev-dependencies group with 23 updates
  • 57c256d chore(deps): bump the dev-dependencies group with 29 updates
  • fd3864d cuobjclient: select GID index 0 on InfiniBand ports in the host client
  • ea44925 docs(netutil): correct the comment on handing sniffed bytes to the handshake
  • 658c379 feat: add OIDC endpoint relaxations for private/isolated networks
  • 0c79ae7 feat: add directio option for scoutfs backend
  • f997770 feat: add helm chart hooks for SPIRE support
  • 3979267 feat: add opt-in --fsync to flush new objects before acknowledging them
  • 1c1272c feat: add per-provider OIDC discovery URL override
  • 23d8384 feat: add s3:if-match and s3:if-none-match policy condition keys
  • 3b5c74a feat: add storage class to put object flows input
  • 13b6bb0 feat: add utils command to convert preexisting posix datasets
  • 23317c7 feat: add versioning support for directory objects in posix
  • 7e9f556 feat: add webui concurrent uploads with progress tracking
  • 966a6a8 feat: admin API path prefix, Helm WebUI prefixes and separate IAM storage
  • e448a8a feat: expose POSIX I/O buffer size to scoutfs options
  • c354e1a feat: validate SSE-C headers and reject SSE-C in posix and azure
  • 25f9790 fix(s3api): strip aws-chunked only for streaming uploads
  • daa25ed fix: accept upload-id-marker together with key-marker in ListMultipartUploads
  • 3610edd fix: add explicit RDMA build constraints
  • 241571a fix: align signing region mismatch errors with s3 regional endpoints
  • a7f1336 fix: allow vgwrdma explicit RC GID selection
  • b939fc8 fix: answer plaintext HTTP sent to a TLS listener with a 400
  • d313772 fix: apply bucket CORS right before auth middleware
  • 0667514 fix: authorize browser-based POST object uploads against the object ARN
  • 834ce25 fix: authorize multi-action requests per action across bucket and identity policies
  • 11a517c fix: avoid nil-pointer panic in mtime
  • 00fa54d fix: clear stale delete-marker metadata on reupload
  • c366966 fix: close connections with unread chunked bodies
  • 41783bd fix: combine bucket policy with ACL so a policy no longer locks the owner out
  • 592e91b fix: compute IsTruncated from the absolute index in ListMultipartUploads
  • 293d9f5 fix: deprecations in JWK and IPA RSA handling
  • 070b030 fix: drop upload-id-marker without key-marker in ListMultipartUploads
  • 24f6273 fix: echo only the request continuation token in ListObjectsV2
  • e8f6be5 fix: echo the full Authorization header in Unsupported Authorization Type errors
  • 08c0904 fix: enforce destination If-Match/If-None-Match on CopyObject
  • 1b9fedb fix: enforce object lock on browser-based POST object uploads
  • e1d7290 fix: handle the null version id correctly in posix versioning
  • 51c2873 fix: harden RC device initialization
  • 3db22f3 fix: hide webui user management when server in single-user mode
  • d7895e3 fix: honor the per-object ETag and Size conditions in DeleteObjects
  • 027a36d fix: include the empty TagKey in InvalidTag errors and match S3 tag validation
  • 752da31 fix: keep O_DIRECT active for object uploads and reads
  • bb59020 fix: keep the last modified time of promoted object versions in posix
  • 7093e91 fix: keep the object on DeleteObject with a versionId in a never-versioned bucket
  • 4826502 fix: list only the objects not deleted in DeleteObjects quiet mode
  • 3de8228 fix: make ListMultipartUploads ordering deterministic and stabilize test timing
  • 9c363b2 fix: make conditional publish lock modes explicit
  • 859f81f fix: map azure AuthorizationPermissionMismatch to AccessDenied
  • bca801b fix: match S3 for conditional deletes of missing keys, delete markers and versions
  • 888fd5c fix: match S3's Content-Encoding error details for aws-chunked with UNSIGNED-PAYLOAD
  • 0ab0db4 fix: object verson mtime
  • 6518246 fix: omit ObjectLockConfiguration Rule when there is no default retention
  • cdbebb0 fix: place the null version by its recorded position in posix versioning
  • ee25c95 fix: port the cuObjServer wrapper to libcuobjserver 2.0.0
  • f21434c fix: prevent path traversal via multipart upload IDs and DeleteObjects keys
  • 84e8b0d fix: reject DeleteObjects requests with more than 1000 keys
  • 6c6b14f fix: reject ListMultipartUploads requests that also carry uploadId
  • ee46df2 fix: reject a ListBuckets bucket-region other than the gateway region
  • d03ac3c fix: reject a PutObject whose body ends before Content-Length
  • aed4617 fix: reject an empty start-after and continuation-token in ListObjects (V1)
  • 1e0d7b2 fix: reject empty versionId query parameter in object actions
  • 44dc2e7 fix: reject the start-after query in ListObjects (V1)
  • 2ebe5be fix: reload standalone IAM and private-channel mTLS certs on SIGHUP
  • 9c98084 fix: remove legacy rdma header descriptors
  • 03a6e82 fix: replace fixed sleep with readiness polling in azurite CI
  • 20b3334 fix: report the delete time as the last modified time of delete markers in posix
  • 95a6da8 fix: report the last upload in ListMultipartUploads next markers on a single page
  • a014c7c fix: report the upload, part and ETag in InvalidPart for a malformed part ETag
  • aa1e82b fix: require s3:PutObjectTagging for tagged browser-based POST object uploads
  • 2a86b86 fix: require an integrity check for uploads with Object Lock parameters and authorize every action of anonymous requests
  • d68efb6 fix: restore IPA KRA compatibility and fix JWK parse panic
  • 2d087f9 fix: return AccessDenied for filesystem permission errors on posix writes
  • c99f9ba fix: return InvalidAccessKeyId for unknown access keys in single, Vault and IPA IAM
  • 915fc7a fix: return InvalidArgument for an empty website configuration
  • 5d5ee06 fix: return InvalidURI for a malformed escape in the request path
  • 63922ed fix: return MalformedXML for a DeleteObjects request without objects
  • 1a68d10 fix: return Marker when the request omits it
  • c02173d fix: return NextMarker in ListObjects only when a delimiter is set
  • a58e125 fix: return BucketAlreadyExists for existing dirs without acl meta attr
  • 4432f2d fix: scope CompleteMultipartUpload retries to the completed upload
  • 7c6fcad fix: set the CreateBucket location constraint from the S3 backend region
  • dc0265b fix: snapshot the replaced object before storing metadata in posix CompleteMultipartUpload
  • c339f39 fix: staticcheck on cuObject stubs
  • 4887633 fix: stop object annotation, rename and torrent requests from reaching plain object handlers
  • d204d2e fix: stop posix copying data from a delete marker
  • bd6cfe6 fix: stop posix mixing up keys that differ only by a trailing slash
  • 729ced9 fix: stop posix publish lock serializing the same key across buckets
  • ba02c76 fix: stop posix rewriting the current version on a copy to itself
  • 5b13559 fix: stop sidecar attributes leaking into new and promoted object versions
  • bbad4b5 fix: store bucket default retention on each object at write time and support Object Lock fields in browser POST
  • d21828e fix: store posix object keys with Windows-invalid characters under encoded names on Windows
  • 370d909 fix: strip aws-chunked from stored Content-Encoding
  • bbe398a fix: strip aws-chunked when the request declares no payload type
  • d383e1f fix: track how the request body ended before closing the connection
  • cc48b75 fix: treat root-level non-directory entries as non-existing buckets in posix
  • e0d98d0 fix: unblock govulncheck and staticcheck CI after Go 1.27.2 release
  • 5847f04 fix: update the example systemd configs with latest options
  • 20a5778 fix: use content-legnth for PutObject and UploadPart allocation sizes
  • aaf7321 fix: validate and apply the ListBuckets bucket-region query
  • 7ae119d posix: add AbsolutePaths option for embedding without chdir
  • ae2a3a6 rdma: acquire session admission credit atomically
  • 50b098c rdma: add --rc-device to pick the RC data plane's verbs device by name
  • d782e62 rdma: add a log callback ABI to the RC data plane
  • c07f75a rdma: add a point-in-time session snapshot to the RC C ABI
  • 138504d rdma: add terminal notification callback to the RC server ABI
  • 368dae0 rdma: address the RC peer by LID on InfiniBand link layers
  • 96be4d1 rdma: bound publication backpressure and close the reservation window
  • 51e63e2 rdma: cap the session-less publication backlog
  • f92d6d6 rdma: carry the session id in the reaped session record
  • 39aae54 rdma: close publication gaps for RC pre-session failures
  • b0954d9 rdma: correct the license header on newly authored RC files
  • 8e23315 rdma: dispatch poll_cq/post_send/post_recv through the object's own context
  • 7c19b34 rdma: drop Inc. from our copyright notices
  • 9edd21e rdma: drop the personal name from copyright notices
  • 6eb574d rdma: expose live RC sessions on the admin server
  • 980078d rdma: expose the RC data plane resource limits as gateway flags
  • 60bec2c rdma: gate session admission on audit publication backlog
  • 279f5e7 rdma: harden RC outcome publication ownership and record fidelity
  • e7edb71 rdma: install the gateway shutdown wrapper at function entry
  • d30ace7 rdma: keep reaper callbacks off sink threads
  • c9668b4 rdma: keep sinks outside the publication lock and self-close metrics
  • 23a7121 rdma: make the teardown callback the single RC publication owner
  • 06a3463 rdma: name the deviceless init failures in the RC server
  • e9a2a2f rdma: never run operational sinks on callback threads
  • 34a3e41 rdma: pin session strings passed to the RC cgo ABI
  • 49b1c6f rdma: publish RC transfer outcomes into the gateway operational services
  • 97238d8 rdma: reserve session publication before completion calls
  • 09bbe9c rdma: resolve the inline-only verbs calls from the provider ops table
  • 55c82f5 rdma: size publications to session capacity and preserve committed PUT facts
  • 64a6ed0 rdma: synchronize publication acceptance with the drain boundary
  • d3e45fd rdma: track terminal events held off by an active reservation
  • 49e0c36 s3api: report the bound addresses from the listen hook
  • 745926a tests: build the integration SDK config without the host's AWS setup
  • b1f8cea webui: show upload progress in the Explorer

Don't miss a new versitygw release

NewReleases is sending notifications on new releases.