Releases: google/go-cloud
v0.40.0
What's Changed
- blob/all: disable Upload optimization when WriterOptions.ContentMD5 is set by @vangent in #3478
- blob/s3blob: custom endpoints with s3 and aws sdk v2 by @caarlos0 in #3473
- blob/all: Don't require SetIOFSCallback be called to use io/fs.FS functions by @vangent in #3479
- blob/s3blob: fix data race by @arjunnair1997 in #3480
- blob/azblob: Support AZURE_STORAGEBLOB_CONNECTIONSTRING as an alternative for AZURE_STORAGE_CONNECTION_STRING by @vangent in #3483
- s3blob/blob: support additional endpoint query parameters by @stanhu in #3486
- blob/gcsblob: Allow providing options for storage.NewClient by @vangent in #3493
- aws: Add support for non-camelcased version of two URL parameters by @vangent in #3494
- Add disableHTTPS and usePathStyle s3v2.Options as query param by @khrm in #3491
- aws: add rate_limiter_capacity to configure client-side rate limits by @stanhu in #3497
New Contributors
- @caarlos0 made their first contribution in #3473
- @arjunnair1997 made their first contribution in #3480
- @bdon made their first contribution in #3481
- @khrm made their first contribution in #3491
Full Changelog: v0.39.0...v0.40.0
v0.39.0
BREAKING CHANGE (AWS only, V1 vs V2 SDK)
Context: AWS has announced maintenance mode for the Go V1 SDK.
Go CDK has changed the default SDK for URLs across all modules except docstore/awsdynamodb
to be V2 (previously you needed to add awssdk=v2
to the URL to get V2). Most URLs should continue to work, but in some cases you may need to add awssdk=v1
to force V1 explicitly.
Also, concrete type constructors (e.g., OpenBucket
) for V1 (again, except docstore/awsdynamodb
) have been marked deprecated; please migrate to using the V2 versions (e.g., OpenBucketV2
).
Our tentative plan is to remove support for V1 in early 2025; please file a bug if you have concerns about that.
What's Changed
- pubsub: Make batch request results independent by @mitsos1os in #3457
- docstore/all: Add support for boolean filter by @ybourgery in #3464
- aws/all: Mark V1 constructors deprecated. by @vangent in #3466
- aws/all: Change the default for AWS URLs from V1 to V2. by @vangent in #3465
- all: update to go version 1.23 by @vangent in #3467
New Contributors
- @mitsos1os made their first contribution in #3457
- @dependabot made their first contribution in #3448
Full Changelog: v0.38.0...v0.39.0
v0.38.0
blob
- all: Fix panics if reader recreation fails after Seek by @vangent in #3425
- all: Convert errors in
Open()
into appropriate fs errors by @milescrabill in #3443 - s3blob: Fix Copy to work with keys that need escaping by @vangent in #3403
- azureblob: Do not panic if Content-Length and Content-Range are missing by @chancez in #3445
- fileblob: Allow customization of the FileMode by @vangent in #3426
pubsub
- awssnssqs: Add support for setting FIFO message metadata by @bartventer in #3435
- kafkapubsub: Configuring key_name when OpenTopicURL by @ssetin in #3404
- rabbitpubsub: Add query string set the qos prefetch count by @peczenyj in #3431
- rabbitpubsub: Add query string to set the routing key from metadata by @peczenyj in #3433
- rabbitpubsub: Wrap pubsub rabbitmq errors by @peczenyj in #3437
docstore
- all: Fix offset handling and extend test coverage by @bartventer in #3409
- awsdynamodb: Ensure Next returns EOF when no more items by @bartventer in #3406
- mongodocstore: Update Mongo dialer when MONGO_SERVER_URL rotates by @concaf in #3429
New Contributors
- @ssetin made their first contribution in #3404
- @concaf made their first contribution in #3429
- @peczenyj made their first contribution in #3431
- @chancez made their first contribution in #3445
- @milescrabill made their first contribution in #3443
- @samlaf made their first contribution in #3450
Full Changelog: v0.37.0...v0.38.0
v0.37.0
-
blob
- s3blob: Support S3 server side encryption headers for Write and Copy.
- gcsblob: Ensure driver sets
Content-Type
auto-detection properly.
-
pubsub
- azpubsub: Ensure 401s are not retryable.
- azpubsub: Allow configuring max_recv_batch_size in via URL.
- mongodocstore: Fix error when calling the update function with no 'set' operations.
-
docstore
- all: Add
Offset
method, useful for pagination
- all: Add
v0.36.0
blob
- all: Allow disabling of
ContentType
auto-detection during writes.
pubsub
- azuresb: Added a new auth method to support Service principal/kubelet identity/Workload identity auth methods.
docstore
- all: Add in/not-in operators for Query.
- gcpfirestore: Added a missing resource header when running query.
mysql
- Pass TLS config directly to MySQL's config
v0.35.0
BREAKING CHANGES
This release updates the dependency on AWS/S3, which included some breaking changes; see #3342 for details.
blob
- gcsblob: Fix unauthenticated requests.
runtimevar
- constantvar: Add support for reading the constant variable value from the environment.
docstore
- gcpfilestore: Add support for non-default databases.
v0.34.0
v0.33.0
blob
- all: Avoid infinite recursion when using
io.Copy
between Reader and Writer. - azblob: Fixed bug in use of SAS token in service URLs.
- fileblob: Create temp files in os.TempDir so they don't leak.
pubsub
- awssnssqs: Use
PublishBatch
for sending messages in SNS. - natspubsub: Added support for NATS v2.2.0+ native message headers and message encoding.
v0.32.0
Redoing v0.31.0
since I think I messed up the tags. Copying the release notes:
all
- Update
go
version ingo.mod
to maintain cleanergo.mod
andgo.sum
files.
blob
- all: Pass through reader/writer to
WriteTo
/ReadFrom
if available (optimization). - all: Make
blob.Bucket
implementio/fs.FS
andio/fs.SubFS
. - gcsblob: Add support for forcing an unauthenticated client.
server
- Make
requestlog
internal structs implementhttp.Flusher
. - Don't always read the full request in order to calculate the request size; use
Content-Length
when available.
v0.30.0
blob
- all: Add
Upload
andDownload
methods that may be more efficient for some drivers. - s3blob: Add support for per-request
s3v2.Options
. - s3blob: Stop escaping second
/
in//
; it's no longer necessary.
pubsub
- gcppubsub: Make it possible to configure
max_send_batch_size
.