feat(storage): support copying CSEK-encrypted files to non-CSEK destinations - #26
feat(storage): support copying CSEK-encrypted files to non-CSEK destinations#26thiyaguk09 wants to merge 10 commits into
Conversation
There was a problem hiding this comment.
Code Review
This pull request adds support for null encryption keys to allow copying CSEK-encrypted files to standard non-CSEK destinations. The review identifies a critical bug in the copy logic where the source file's encryption key is mutated and the destination file is left in an inconsistent state by bypassing setEncryptionKey. Feedback also suggests correcting the corresponding unit tests to avoid asserting on this buggy behavior and to use the proper setter method instead of manually assigning dummy properties.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
76c3932 to
ea8daaa
Compare
a74b4bf to
657755f
Compare
5a02dda to
c298f2e
Compare
…8987) ## Description Upgrade the Node version from 18 to 22. Towards googleapis#8985
Fixes googleapis#8969 🦕 I verified via grep that rimraf is not imported or required anywhere in the src/ or build/ directories. I also ran the full test suite (npm test) after removing the dependency to ensure no runtime or build failures occur.
…oogleapis#8972) Fixes [b/539480772](http://b/539480772) 🦕
…cessing to 0.1.11 (googleapis#8980) Update librarian to v0.30.1 and gapic-node-processing to 0.1.11 in librarian.yaml, and regenerate all client libraries across the workspace. - Toolchain: Update librarian to v0.30.1 and gapic-node-processing to 0.1.11. - Multi-API Barrel Exports: Restore previously missing client exports across multi-service libraries (such as WorkflowsClient in google-cloud-workflows and FirestoreAdminClient in google-cloud-firestore-api) using TypeScript AST declaration merging. - Protobuf Bundles: Minify runtime protobuf bundles (protos/protos.js), reducing generated JavaScript file sizes by up to 75%. - Workflows Custom Script: Empty the filesToDelete array in packages/google-cloud-workflows/librarian.js. Previously, this script deleted generated WorkflowsClient files as a workaround for generator limitations. With multi-service AST merging enabled in gapic-node-processing, index.ts automatically exports WorkflowsClient, requiring the target files to be preserved on disk. For googleapis/librarian#6969
…leapis#8992) Add minified protobuf runtime scripts (protos/protos.js) to ignoreFiles in .github/header-checker-lint.yml. Copyright headers do not need to be validated in minified protobuf scripts because these files are automatically generated during the build process. The compilation step strips comments and whitespace to reduce bundle size, which removes the copyright header and causes false positives in CI validation.
🤖 I have created a release *beep* *boop* --- <details><summary>jsdoc-region-tag: 5.0.0</summary> ## [5.0.0](googleapis/google-cloud-node@jsdoc-region-tag-v4.0.3...jsdoc-region-tag-v5.0.0) (2026-07-29) ### ⚠ BREAKING CHANGES * Update jsdoc-region-tag to minimum Node version of 22. ([googleapis#8984](googleapis#8984)) ### Features * Update jsdoc-region-tag to minimum Node version of 22. ([googleapis#8984](googleapis#8984)) ([9c26691](googleapis@9c26691)), refs [googleapis#8985](googleapis#8985) </details> <details><summary>pack-n-play: 5.0.0</summary> ## [5.0.0](googleapis/google-cloud-node@pack-n-play-v4.2.3...pack-n-play-v5.0.0) (2026-07-29) ### ⚠ BREAKING CHANGES * Update pack-n-play to minimum Node version of 22. ([googleapis#8987](googleapis#8987)) ### Features * Update pack-n-play to minimum Node version of 22. ([googleapis#8987](googleapis#8987)) ([b61e3d7](googleapis@b61e3d7)), refs [googleapis#8985](googleapis#8985) </details> <details><summary>admanager: 0.8.0</summary> ## [0.8.0](googleapis/google-cloud-node@admanager-v0.7.0...admanager-v0.8.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> <details><summary>cloudquotas: 2.4.0</summary> ## [2.4.0](googleapis/google-cloud-node@cloudquotas-v2.3.1...cloudquotas-v2.4.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> <details><summary>chat: 0.27.0</summary> ## [0.27.0](googleapis/google-cloud-node@chat-v0.26.0...chat-v0.27.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> <details><summary>aiplatform: 6.11.0</summary> ## [6.11.0](googleapis/google-cloud-node@aiplatform-v6.10.0...aiplatform-v6.11.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> <details><summary>batch: 2.5.0</summary> ## [2.5.0](googleapis/google-cloud-node@batch-v2.4.0...batch-v2.5.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> <details><summary>commerceproducer: 0.2.0</summary> ## [0.2.0](googleapis/google-cloud-node@commerceproducer-v0.1.0...commerceproducer-v0.2.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> <details><summary>compute: 6.15.0</summary> ## [6.15.0](googleapis/google-cloud-node@compute-v6.14.0...compute-v6.15.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> <details><summary>google-cloud-firestore-api: 0.3.0</summary> ## [0.3.0](googleapis/google-cloud-node@google-cloud-firestore-api-v0.2.0...google-cloud-firestore-api-v0.3.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> <details><summary>network-connectivity: 4.7.0</summary> ## [4.7.0](googleapis/google-cloud-node@network-connectivity-v4.6.1...network-connectivity-v4.7.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> <details><summary>networkservices: 0.14.0</summary> ## [0.14.0](googleapis/google-cloud-node@networkservices-v0.13.0...networkservices-v0.14.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> <details><summary>sql: 0.26.0</summary> ## [0.26.0](googleapis/google-cloud-node@sql-v0.25.0...sql-v0.26.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> <details><summary>support: 2.6.0</summary> ## [2.6.0](googleapis/google-cloud-node@support-v2.5.0...support-v2.6.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> <details><summary>tasks: 6.3.0</summary> ## [6.3.0](googleapis/google-cloud-node@tasks-v6.2.3...tasks-v6.3.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> <details><summary>developer-knowledge: 0.3.0</summary> ## [0.3.0](googleapis/google-cloud-node@developer-knowledge-v0.2.0...developer-knowledge-v0.3.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> <details><summary>containeranalysis: 6.9.0</summary> ## [6.9.0](googleapis/google-cloud-node@containeranalysis-v6.8.0...containeranalysis-v6.9.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> <details><summary>navconnect: 0.2.0</summary> ## [0.2.0](googleapis/google-cloud-node@navconnect-v0.1.1...navconnect-v0.2.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> <details><summary>grafeas: 6.3.0</summary> ## [6.3.0](googleapis/google-cloud-node@grafeas-v6.2.0...grafeas-v6.3.0) (2026-07-29) ### Features * Update API sources and regenerate ([googleapis#8999](googleapis#8999)) ([5c36365](googleapis@5c36365)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please). Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
…SEK and fix copy behavior for non-encrypted destinations
…r conflicts during file copy operations
…t instead of file request
c298f2e to
2e98b7c
Compare
Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly:
Fixes #<issue_number_goes_here> 🦕