Changelog

2.56.0 (2025-08-25)

Features

  • breaking behavior rewrite Storage.blobAppendableUpload to be non-blocking and have improved throughput (#3231) (7bd73d3)
  • Add AppendableUploadWriteableByteChannel#flush() (#3261) (950c56f)
  • Add MinFlushSizeFlushPolicy#withMaxPendingBytes(long) (#3231) (7bd73d3)
  • Add StorageChannelUtils to provide helper methods to perform blocking read/write to/from non-blocking channels (#3231) (7bd73d3)

Bug Fixes

  • Make FlushPolicy${Min,Max}FlushSizeFlushPolicy constructors private (#3217) (7bd73d3)
  • Update BlobAppendableUploadConfig and FlushPolicy.MinFlushSizeFlushPolicy to default to 4MiB minFlushSize and 16MiB maxPendingBytes (#3249) (7bd73d3)
  • Update otel integration to properly activate span context for lazy RPCs such as reads & writes (#3255) (d6587f4)

Dependencies

  • Update actions/checkout action to v5 (#3239) (33f024b)
  • Update dependency com.google.apis:google-api-services-storage to v1-rev20250815-2.0.0 (#3245) (87afe1a)
  • Update dependency com.google.cloud:sdk-platform-java-config to v3.52.0 (#3250) (0782e62)

2.55.0 (2025-08-05)

Features

  • Add new preview Bucket encryption policy configuration (#3204) (7b250dd)

Bug Fixes

  • deps: Update the Java code generator (gapic-generator-java) to 2.61.0 (f98b686)
  • Enable ALTS bound token (for DirectPath) in the grpc channel provider (#2919) (38d248d)

Dependencies

  • Update dependency com.google.cloud:sdk-platform-java-config to v3.51.0 (#3213) (86ff697)

2.54.0 (2025-07-24)

Features

  • Add BucketInfo.IpFilter (#3177) (14a91ec)
  • Add default end-to-end checksumming for JournalingBlobWriteSessionConfig #3180 (fa0f6a0)
  • Add default end-to-end crc32c checksumming for several upload methods via grpc transport #3176 (fa0f6a0)

Bug Fixes

  • deps: Update the Java code generator (gapic-generator-java) to 2.60.2 (bd1f199)
  • Give user provided checksum precondition priority for Storage#create methods that accept byte[] #3182 (fa0f6a0)
  • Move crc32c computation before writing to disk for BufferToDiskThenUpload BlobWriteSession config #3187 (fa0f6a0)

Dependencies

  • Update dependency com.google.apis:google-api-services-storage to v1-rev20250718-2.0.0 (#3203) (18978e4)
  • Update dependency com.google.cloud:sdk-platform-java-config to v3.50.2 (#3201) (782c3c4)
  • Update googleapis/sdk-platform-java action to v2.60.1 (#3196) (6ba56e5)

2.53.3 (2025-07-09)

Bug Fixes

  • Fix DefaultBlobWriteSessionConfig init to work when grpc classes are excluded (#3147) (8571ba8)

Dependencies

  • Update dependency com.google.apis:google-api-services-storage to v1-rev20250629-2.0.0 (#3185) (4ce8281)
  • Update dependency com.google.cloud:sdk-platform-java-config to v3.50.1 (#3189) (7fbfb01)

2.53.2 (2025-06-25)

Bug Fixes

  • Fix Journaling BlobWriteSessionConfig to properly handle multiple consecutive retries (#3166) (895bfbd)

Dependencies

  • Update dependency com.google.cloud.opentelemetry:exporter-trace to v0.36.0 (#3162) (41a1030)
  • Update sdk-platform-java dependencies (#3164) (c22a131)

2.53.1 (2025-06-18)

Bug Fixes

  • Cancel the future in RemoteStorageHelper#forceDelete when TimeoutException happens (#3136) (e6007d5)
  • deps: Update the Java code generator (gapic-generator-java) to 2.59.0 (7dba9f0)

Dependencies

  • Update dependency com.google.apis:google-api-services-storage to v1-rev20250605-2.0.0 (#3143) (17a80d8)
  • Update sdk-platform-java dependencies (#3152) (2f78192)

2.53.0 (2025-06-04)

Features

  • Expose BucketInfo.getProject as a BigInteger (#3119) (64bbb60), closes #3023
  • storagecontrol: Add Anywhere cache control APIs (06572b7)
  • storagecontrol: Add Client Libraries Storage IntelligenceConfig (06572b7)

Bug Fixes

  • deps: Update the Java code generator (gapic-generator-java) to 2.58.0 (06572b7)

Dependencies

  • Update dependency com.google.apis:google-api-services-storage to v1-rev20250521-2.0.0 (#3118) (e1be49e)
  • Update dependency com.google.apis:google-api-services-storage to v1-rev20250524-2.0.0 (#3127) (2a4499d)
  • Update sdk-platform-java dependencies (#3129) (31cd058)

Documentation

  • Add explicit Optional annotations to fields that have always been treated as optional (53b6927)
  • Add note that Bucket.project output format is always project number format (53b6927)
  • Add note that managedFolders are supported for GetIamPolicy and SetIamPolicy (53b6927)

2.52.3 (2025-05-19)

Bug Fixes

  • Update grpc client side metrics detection to be graceful when not running on gcp (#3097) (10cd32d)

Dependencies

  • Update dependency com.google.apis:google-api-services-storage to v1-rev20250509-2.0.0 (#3103) (1fd1090)
  • Update sdk-platform-java dependencies (#3102) (3b53b94)

2.52.2 (2025-05-06)

Bug Fixes

  • Fix a possible NPE that could happen when shutting down a grpc Storage instance (#3089) (56f5d0a)

Dependencies

  • Update dependency com.google.apis:google-api-services-storage to v1-rev20250424-2.0.0 (#3084) (c7afbde)
  • Update sdk-platform-java dependencies (#3087) (762ca13)

2.52.1 (2025-05-01)

Bug Fixes

  • Fix grpc ReadObject memory leak introduced in 2.51.0 (#3080) (7057629)

2.52.0 (2025-04-28)

Important

This release has a direct memory leak when using gRPC transport for downloads.

Please update to 2.52.1 or later which contains the fix.

Features

  • Add Storage.BlobListOption#includeTrailingDelimiter (#3038) (0b7a0df)

Bug Fixes

  • deps: Update the Java code generator (gapic-generator-java) to 2.56.2 (74c46dd)

Dependencies

  • Update dependency com.google.apis:google-api-services-storage to v1-rev20250416-2.0.0 (#3063) (d496d5b)
  • Update dependency com.google.apis:google-api-services-storage to v1-rev20250420-2.0.0 (#3070) (1ef50f2)
  • Update dependency com.google.cloud:sdk-platform-java-config to v3.46.2 (#3061) (cb43a6c)
  • Update googleapis/sdk-platform-java action to v2.56.2 (#3055) (7025ad7)

2.51.0 (2025-04-23)

Important

This release has a direct memory leak when using gRPC transport for downloads.

Please update to 2.52.1 or later which contains the fix.

Features

  • Add @BetaApi Storage#blobAppendableUpload for gRPC Transport (#3020) (62b6248)
  • Add @BetaApi Storage#blobReadSession for gRPC Transport (#3020) (62b6248)
  • Implement improved retry context information (#3020) (62b6248)

Bug Fixes

  • deps: Update the Java code generator (gapic-generator-java) to 2.56.0 (8f9f5ec)
  • Ensure object generation is sent for Storage#update(BlobInfo) using HTTP Transport (#3006) (2a3e0e7), closes #2980
  • Update 416 handling for ReadChannel (#3018) (4a9c3e4)
  • Update gRPC Bidi resumable upload to have more robust error message generation (#2998) (79b5d85)
  • Update gRPC implementation for storage.buckets.get to translate NOT_FOUND to null (#3005) (704af65)

Dependencies

  • Remove explicit version declarations for packages that are in shared-dependencies (#3014) (61cdb30)
  • Update dependency com.google.apis:google-api-services-storage to v1-rev20250312-2.0.0 (#3000) (78fc076)
  • Update dependency com.google.cloud.opentelemetry:exporter-trace to v0.34.0 (#2938) (ff6f696)
  • Update sdk-platform-java dependencies (#3046) (861f958)
  • Update sdk-platform-java dependencies (#3053) (921d1ba)

2.50.0 (2025-03-14)

Features

Bug Fixes

  • deps: Update the Java code generator (gapic-generator-java) to 2.54.0 (22e7e3d)
  • deps: Update the Java code generator (gapic-generator-java) to 2.55.1 (81c8c61)
  • Improve 503 handling for json resumable uploads (#2987) (9bc2b14)
  • Update usages of String.format to explicitly pass Locale.US (#2974) (8bcb2de), closes #2972

Dependencies

  • Update dependency com.google.apis:google-api-services-storage to v1-rev20250224-2.0.0 (#2969) (80a40c4)
  • Update googleapis/sdk-platform-java action to v2.55.1 (#2985) (e22a2de)
  • Update sdk-platform-java dependencies (#2983) (9eeb82a)
  • Update sdk-platform-java dependencies (#2986) (10b922a)

2.49.0 (2025-02-26)

Features

  • Add new Options to allow per method header values (#2941) (297802d)
  • transfer-manager: Add ParallelUploadConfig.Builder#setUploadBlobInfoFactory (#2936) (86e9ae8), closes #2638

Bug Fixes

  • Categorize a WatchdogTimeoutException as retriable for grpc ReadObject (#2954) (b53bd53)
  • deps: Update the Java code generator (gapic-generator-java) to 2.53.0 (9946d6b)
  • Update grpc based Storage to defer project id validation (#2930) (cc03784)
  • Update kms key handling when opening a resumable upload to clear the value in the json to be null rather than empty string (#2939) (43553de)

Dependencies

Documentation

2.48.2 (2025-02-11)

Dependencies

Documentation

  • Update storage_copy_file to include MegabytesCopiedPerChunk (#2910) (971ca5d)

2.48.1 (2025-02-03)

Bug Fixes

  • deps: Update the Java code generator (gapic-generator-java) to 2.52.0 (00754bc)
  • Update batch handling to ensure each operation has its own unique idempotency-token (#2905) (8d79b8d)

Dependencies

  • Update dependency com.google.cloud:sdk-platform-java-config to v3.42.0 (#2895) (145afb0)
  • Update dependency com.google.cloud.opentelemetry:exporter-trace to v0.33.0 (#2904) (2a5242e)

Documentation

2.48.0 (2025-01-27)

Features

  • Add new Storage#moveBlob method to atomically rename an object (#2882) (c49fd08)
  • Next release from main branch is 2.48.0 (#2885) (34e5903)

Bug Fixes

  • deps: Update the Java code generator (gapic-generator-java) to 2.51.1 (09ed029)
  • Update Signed URL default scheme to resolve from storage options host (#2880) (7ae7e39), closes #2870
  • Update StorageException translation of an ApiException to include error details (#2872) (8ad5010)

Dependencies

  • Update dependency com.google.cloud.opentelemetry:exporter-trace to v0.33.0 (#2873) (39509d5)
  • Update gcr.io/cloud-devrel-public-resources/storage-testbench docker tag to v0.52.0 (#2883) (a64a3d5)

2.47.0 (2025-01-08)

Features

  • Add MoveObject RPC (34b8ac4)
  • Introductory beta level support for OpenTelemetry tracing on c.g.c.storage.Storage methods (#2837) (dd889ea)

Bug Fixes

  • De-beta storage-v2 artifacts (#2852) (77a2e8a)
  • deps: Update the Java code generator (gapic-generator-java) to 2.51.0 (34b8ac4)
  • Fix interrupt spiral in grpc ReadObject drainQueue (#2850) (c1dac83)
  • Update request handling of gRPC based CopyWriter (#2858) (093cb87)

Dependencies

  • Update gcr.io/cloud-devrel-public-resources/storage-testbench docker tag to v0.51.0 (#2860) (980ac4e)
  • Update googleapis/sdk-platform-java action to v2.51.1 (#2864) (b731c06)
  • Update sdk-platform-java dependencies (#2866) (562df7f)

2.46.0 (2024-12-13)

Features

  • Introduce java.time methods and variables (#2826) (baf30ee)

Bug Fixes

  • Update retry lifecycle when attempting to decompress a gzip object (#2840) (7dba13c)

Dependencies

  • Update dependency com.google.apis:google-api-services-storage to v1-rev20241113-2.0.0 (#2823) (503e518)
  • Update dependency com.google.apis:google-api-services-storage to v1-rev20241206-2.0.0 (#2839) (8f3cdd3)
  • Update gcr.io/cloud-devrel-public-resources/storage-testbench docker tag to v0.50.0 (#2825) (9aa68a6)
  • Update sdk-platform-java dependencies (#2841) (2a70481)

Documentation

2.45.0 (2024-11-18)

Features

Bug Fixes

  • deps: Update the Java code generator (gapic-generator-java) to 2.49.0 (aef367d)
  • deps: Update the Java code generator (gapic-generator-java) to 2.50.0 (281cccb)
  • Set default values for monitored resource (#2809) (27829a4)

Dependencies

2.44.1 (2024-10-25)

Dependencies

2.44.0 (2024-10-23)

Features

Bug Fixes

  • deps: Update the Java code generator (gapic-generator-java) to 2.47.0 (c517798)
  • Fix createFrom resumable upload retry offset calculation (#2771) (1126cdc), closes #2770
  • Update gRPC ReadObject retry to avoid double retry (#2765) (1fc57b9)

Dependencies

  • Update dependency com.google.apis:google-api-services-storage to v1-rev20241008-2.0.0 (#2776) (0545b5e)
  • Update dependency com.google.cloud:sdk-platform-java-config to v3.38.0 (#2787) (a470e88)
  • Update gcr.io/cloud-devrel-public-resources/storage-testbench docker tag to v0.48.0 (#2781) (8fa013e)
  • Update gcr.io/cloud-devrel-public-resources/storage-testbench docker tag to v0.49.0 (#2782) (a7baffb)
  • Update googleapis/sdk-platform-java action to v2.48.0 (#2786) (2893e61)

2.43.2 (2024-10-08)

Bug Fixes

  • Plumb list blobs match glob option for grpc transport (#2759) (207abd1)

Dependencies

  • Update dependency com.google.api:gapic-generator-java to v2.47.0 (#2750) (9041f24)
  • Update dependency com.google.apis:google-api-services-storage to v1-rev20240924-2.0.0 (#2719) (7b19831)
  • Update dependency com.google.cloud:sdk-platform-java-config to v3.37.0 (#2751) (003d6fa)
  • Update googleapis/sdk-platform-java action to v2.47.0 (#2749) (befa415)

2.43.1 (2024-09-26)

Bug Fixes

  • Add managed folder to testIamPermissions method (556dd95)
  • deps: Update the Java code generator (gapic-generator-java) to 2.46.0 (556dd95)
  • Remove server unimplemented GrpcStorageImpl#{get,list,create,delete,Update}HmacKey (#2717) (06f7292)
  • Remove server unimplemented GrpcStorageImpl#{get,list,create,delete}Notification (#2710) (310c9b2)
  • Remove server unimplemented GrpcStorageImpl#getServiceAccount (#2718) (51076a8)
  • Update grpc based ReadObject rpcs to remove race condition between cancellation and message handling (#2708) (2c7f088)
  • Update grpc upload error diagnostics to be tolerant of receiving an error if no request has been sent (#2732) (fff72d5)
  • Update GrpcStorageOptions to attempt direct path by default (#2715) (9de9a92)

Dependencies

  • Update dependency com.google.cloud:sdk-platform-java-config to v3.36.0 (#2721) (11f09fe)
  • Update dependency com.google.cloud:sdk-platform-java-config to v3.36.1 (#2738) (eb320e1)
  • Update googleapis/sdk-platform-java action to v2.46.1 (#2736) (795f2c3)

2.43.0 (2024-09-13)

Features

  • Allow specifying an expected object size for resumable operations. (#2661) (3405611), closes #2511

Bug Fixes

  • Close pending zero-copy responses when Storage#close is called (#2696) (1855308)
  • Github workflow vulnerable to script injection (#2663) (9151ac2)
  • Make ParallelCompositeUploadBlobWriteSessionConfig.ExecutorSupplier#cachedPool a singleton (#2691) (1494809)

Dependencies

  • Promote storage-v2 artifacts to beta (9d22597)
  • Update dependency com.google.apis:google-api-services-storage to v1-rev20240819-2.0.0 (#2665) (3df1000)
  • Update dependency com.google.cloud:sdk-platform-java-config to v3.35.0 (#2698) (1dd51c3)

2.42.0 (2024-08-19)

Features

  • Enable grpc.lb.locality label for client-side metrics (#2659) (b681ee0)

Bug Fixes

  • Update modified field handling for blob and bucket with json transport to properly clear fields (#2664) (e2f5537), closes #2662

Dependencies

  • Update dependency com.google.cloud:sdk-platform-java-config to v3.34.0 (#2673) (453c29a)
  • Update gcr.io/cloud-devrel-public-resources/storage-testbench docker tag to v0.45.0 (#2667) (1f66dff)

2.41.0 (2024-07-31)

Features

  • Enable gRPC client open telemetry metrics reporting (#2590) (d153228)

Bug Fixes

  • Add UnknownHostException to set of retriable exception (#2651) (18de9fc)
  • Update grpc resumable upload error categorization to be more tolerant (#2644) (95697dd)
  • Update Storage#readAllBytes to respect shouldReturnRawInputStream option (#2635) (dc883cc)
  • Update TransferManager downloads to reduce in memory buffering (#2630) (fc2fd75)
  • Use fast calculation for totalRemaining number of bytes from multiple ByteBuffers (#2633) (758b3dd)

Dependencies

  • Update dependency com.google.apis:google-api-services-storage to v1-rev20240625-2.0.0 (