google-cloud-storage 1.44.0 → 1.45.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/AUTHENTICATION.md +8 -26
- data/CHANGELOG.md +6 -0
- data/lib/google/cloud/storage/bucket.rb +37 -3
- data/lib/google/cloud/storage/project.rb +35 -0
- data/lib/google/cloud/storage/service.rb +14 -1
- data/lib/google/cloud/storage/version.rb +1 -1
- data/lib/google/cloud/storage.rb +12 -4
- data/lib/google-cloud-storage.rb +14 -4
- metadata +5 -5
    
        checksums.yaml
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            ---
         | 
| 2 2 | 
             
            SHA256:
         | 
| 3 | 
            -
              metadata.gz:  | 
| 4 | 
            -
              data.tar.gz:  | 
| 3 | 
            +
              metadata.gz: 1a00be88dfffe243057e1ffe70891fabb483caadc76a7a37e8b82dcdb5f95395
         | 
| 4 | 
            +
              data.tar.gz: 2190d664457e1419b26b95266d8911728a612647d404790b35f37586dfe59e02
         | 
| 5 5 | 
             
            SHA512:
         | 
| 6 | 
            -
              metadata.gz:  | 
| 7 | 
            -
              data.tar.gz:  | 
| 6 | 
            +
              metadata.gz: e5b129dba88921e6aeec6476d60bb17ee603f0cb641194bbeb09531aff568c2290e17ab3f0f290d87976a0b0f35d4f10674dab8fea6deef70d424738a4ce767c
         | 
| 7 | 
            +
              data.tar.gz: 87e4411cda889bb7bdbf0ccddc2a343ae475614c5cab19d8461bcd646ac78016b6be35975255e14c1af1efcd3c5087c9b769b674260a82f936ef4c0456566a19
         | 
    
        data/AUTHENTICATION.md
    CHANGED
    
    | @@ -112,15 +112,6 @@ those that produce | |
| 112 112 | 
             
            post objects. For these methods, authentication using a service account JSON key file
         | 
| 113 113 | 
             
            is required.
         | 
| 114 114 |  | 
| 115 | 
            -
            [gce-how-to]: https://cloud.google.com/compute/docs/authentication#using
         | 
| 116 | 
            -
            [dev-console]: https://console.cloud.google.com/project
         | 
| 117 | 
            -
             | 
| 118 | 
            -
            [enable-apis]: https://raw.githubusercontent.com/GoogleCloudPlatform/gcloud-common/master/authentication/enable-apis.png
         | 
| 119 | 
            -
             | 
| 120 | 
            -
            [create-new-service-account]: https://raw.githubusercontent.com/GoogleCloudPlatform/gcloud-common/master/authentication/create-new-service-account.png
         | 
| 121 | 
            -
            [create-new-service-account-existing-keys]: https://raw.githubusercontent.com/GoogleCloudPlatform/gcloud-common/master/authentication/create-new-service-account-existing-keys.png
         | 
| 122 | 
            -
            [reuse-service-account]: https://raw.githubusercontent.com/GoogleCloudPlatform/gcloud-common/master/authentication/reuse-service-account.png
         | 
| 123 | 
            -
             | 
| 124 115 | 
             
            ## Creating a Service Account
         | 
| 125 116 |  | 
| 126 117 | 
             
            Google Cloud requires a **Project ID** and **Service Account Credentials** to
         | 
| @@ -130,31 +121,22 @@ connect to most services with google-cloud-storage. | |
| 130 121 | 
             
            If you are not running this client on Google Compute Engine, you need a Google
         | 
| 131 122 | 
             
            Developers service account.
         | 
| 132 123 |  | 
| 133 | 
            -
            1. Visit the [Google  | 
| 124 | 
            +
            1. Visit the [Google Cloud Console](https://console.cloud.google.com/project).
         | 
| 134 125 | 
             
            1. Create a new project or click on an existing project.
         | 
| 135 | 
            -
            1. Activate the  | 
| 126 | 
            +
            1. Activate the menu in the upper left and select **APIs & Services**. From
         | 
| 136 127 | 
             
               here, you will enable the APIs that your application requires.
         | 
| 137 128 |  | 
| 138 | 
            -
               ![Enable the APIs that your application requires][enable-apis]
         | 
| 139 | 
            -
             | 
| 140 129 | 
             
               *Note: You may need to enable billing in order to use these services.*
         | 
| 141 130 |  | 
| 142 131 | 
             
            1. Select **Credentials** from the side navigation.
         | 
| 143 132 |  | 
| 144 | 
            -
                | 
| 145 | 
            -
             | 
| 146 | 
            -
               ![Create a new service account][create-new-service-account]
         | 
| 147 | 
            -
             | 
| 148 | 
            -
               ![Create a new service account With Existing Keys][create-new-service-account-existing-keys]
         | 
| 149 | 
            -
             | 
| 150 | 
            -
               Find the "Add credentials" drop down and select "Service account" to be
         | 
| 151 | 
            -
               guided through downloading a new JSON key file.
         | 
| 152 | 
            -
             | 
| 153 | 
            -
               If you want to re-use an existing service account, you can easily generate a
         | 
| 154 | 
            -
               new key file. Just select the account you wish to re-use, and click "Generate
         | 
| 155 | 
            -
               new JSON key":
         | 
| 133 | 
            +
               Find the "Create credentials" drop down near the top of the page, and select
         | 
| 134 | 
            +
               "Service account" to be guided through downloading a new JSON key file.
         | 
| 156 135 |  | 
| 157 | 
            -
                | 
| 136 | 
            +
               If you want to re-use an existing service account, you can easily generate 
         | 
| 137 | 
            +
               a new key file. Just select the account you wish to re-use click the pencil
         | 
| 138 | 
            +
               tool on the right side to edit the service account, select the **Keys** tab,
         | 
| 139 | 
            +
               and then select **Add Key**.
         | 
| 158 140 |  | 
| 159 141 | 
             
               The key file you download will be used by this library to authenticate API
         | 
| 160 142 | 
             
               requests and should be stored in a secure location.
         | 
    
        data/CHANGELOG.md
    CHANGED
    
    
| @@ -434,6 +434,24 @@ module Google | |
| 434 434 | 
             
                      @gapi.autoclass&.toggle_time
         | 
| 435 435 | 
             
                    end
         | 
| 436 436 |  | 
| 437 | 
            +
                    ##
         | 
| 438 | 
            +
                    # Terminal Storage class of the autoclass
         | 
| 439 | 
            +
                    #
         | 
| 440 | 
            +
                    # @return [String]
         | 
| 441 | 
            +
                    #
         | 
| 442 | 
            +
                    def autoclass_terminal_storage_class
         | 
| 443 | 
            +
                      @gapi.autoclass&.terminal_storage_class
         | 
| 444 | 
            +
                    end
         | 
| 445 | 
            +
             | 
| 446 | 
            +
                    ##
         | 
| 447 | 
            +
                    # Update time at which the autoclass terminal storage class was last modified
         | 
| 448 | 
            +
                    #
         | 
| 449 | 
            +
                    # @return [DateTime]
         | 
| 450 | 
            +
                    #
         | 
| 451 | 
            +
                    def autoclass_terminal_storage_class_update_time
         | 
| 452 | 
            +
                      @gapi.autoclass&.terminal_storage_class_update_time
         | 
| 453 | 
            +
                    end
         | 
| 454 | 
            +
             | 
| 437 455 | 
             
                    ##
         | 
| 438 456 | 
             
                    # Updates bucket's autoclass configuration. This defines the default class for objects in the
         | 
| 439 457 | 
             
                    # bucket and down/up-grades the storage class of objects based on the access patterns.
         | 
| @@ -442,9 +460,6 @@ module Google | |
| 442 460 | 
             
                    # For more information, see [Storage
         | 
| 443 461 | 
             
                    # Classes](https://cloud.google.com/storage/docs/using-autoclass).
         | 
| 444 462 | 
             
                    #
         | 
| 445 | 
            -
                    # Note: Only patch requests that disable autoclass are currently supported.
         | 
| 446 | 
            -
                    # To enable autoclass, you must set it at bucket creation time.
         | 
| 447 | 
            -
                    #
         | 
| 448 463 | 
             
                    # @param [Boolean] toggle for autoclass configuration of the bucket.
         | 
| 449 464 | 
             
                    #
         | 
| 450 465 | 
             
                    def autoclass_enabled= toggle
         | 
| @@ -453,6 +468,25 @@ module Google | |
| 453 468 | 
             
                      patch_gapi! :autoclass
         | 
| 454 469 | 
             
                    end
         | 
| 455 470 |  | 
| 471 | 
            +
                    ##
         | 
| 472 | 
            +
                    # Update method to update all attributes of autoclass of a bucket
         | 
| 473 | 
            +
                    # It accepts params as a Hash of attributes in the following format:
         | 
| 474 | 
            +
                    #
         | 
| 475 | 
            +
                    #     { enabled: true, terminal_storage_class: "ARCHIVE" }
         | 
| 476 | 
            +
                    #
         | 
| 477 | 
            +
                    # terminal_storage_class field is optional. It defaults to `NEARLINE`.
         | 
| 478 | 
            +
                    # Valid terminal_storage_class values are `NEARLINE` and `ARCHIVE`.
         | 
| 479 | 
            +
                    #
         | 
| 480 | 
            +
                    # @param [Hash(String => String)] autoclass_attributes
         | 
| 481 | 
            +
                    #
         | 
| 482 | 
            +
                    def update_autoclass autoclass_attributes
         | 
| 483 | 
            +
                      @gapi.autoclass ||= API::Bucket::Autoclass.new
         | 
| 484 | 
            +
                      autoclass_attributes.each do |k, v|
         | 
| 485 | 
            +
                        @gapi.autoclass.send "#{k}=", v
         | 
| 486 | 
            +
                      end
         | 
| 487 | 
            +
                      patch_gapi! :autoclass
         | 
| 488 | 
            +
                    end
         | 
| 489 | 
            +
             | 
| 456 490 | 
             
                    ##
         | 
| 457 491 | 
             
                    # Whether [Object
         | 
| 458 492 | 
             
                    # Versioning](https://cloud.google.com/storage/docs/object-versioning)
         | 
| @@ -94,6 +94,41 @@ module Google | |
| 94 94 | 
             
                        service.project_service_account.email_address
         | 
| 95 95 | 
             
                    end
         | 
| 96 96 |  | 
| 97 | 
            +
                    ##
         | 
| 98 | 
            +
                    # Add custom Google extension headers to the requests that use the signed URLs.
         | 
| 99 | 
            +
                    #
         | 
| 100 | 
            +
                    # @param [Hash] headers Google extension headers (custom HTTP headers that
         | 
| 101 | 
            +
                    #   begin with `x-goog-`) to be included in requests that use the signed URLs.
         | 
| 102 | 
            +
                    #   Provide headers as a key/value array, where the key is
         | 
| 103 | 
            +
                    #   the header name, and the value is an array of header values.
         | 
| 104 | 
            +
                    #   For headers with multiple values, provide values as a simple
         | 
| 105 | 
            +
                    #   array, or a comma-separated string. For a reference of allowed
         | 
| 106 | 
            +
                    #   headers, see [Reference Headers](https://cloud.google.com/storage/docs/xml-api/reference-headers).
         | 
| 107 | 
            +
                    #
         | 
| 108 | 
            +
                    # @return [Google::Cloud::Storage::Project] Returns the Project for method chaining
         | 
| 109 | 
            +
                    #
         | 
| 110 | 
            +
                    def add_custom_headers headers
         | 
| 111 | 
            +
                      @service.add_custom_headers headers
         | 
| 112 | 
            +
                      self
         | 
| 113 | 
            +
                    end
         | 
| 114 | 
            +
             | 
| 115 | 
            +
                    ##
         | 
| 116 | 
            +
                    # Add custom Google extension header to the requests that use the signed URLs.
         | 
| 117 | 
            +
                    #
         | 
| 118 | 
            +
                    # @param [String] header_name Name of Google extension header (custom HTTP header that
         | 
| 119 | 
            +
                    #   begin with `x-goog-`) to be included in requests that use the signed URLs.
         | 
| 120 | 
            +
                    #   For a reference of allowed headers, see
         | 
| 121 | 
            +
                    #   [Reference Headers](https://cloud.google.com/storage/docs/xml-api/reference-headers).
         | 
| 122 | 
            +
                    # @param [Object] header_value Valid value of the Google extension header being added.
         | 
| 123 | 
            +
                    #   For headers with multiple values, provide values as a simple array, or a comma-separated string.
         | 
| 124 | 
            +
                    #
         | 
| 125 | 
            +
                    # @return [Google::Cloud::Storage::Project] Returns the Project for method chaining
         | 
| 126 | 
            +
                    #
         | 
| 127 | 
            +
                    def add_custom_header header_name, header_value
         | 
| 128 | 
            +
                      @service.add_custom_header header_name, header_value
         | 
| 129 | 
            +
                      self
         | 
| 130 | 
            +
                    end
         | 
| 131 | 
            +
             | 
| 97 132 | 
             
                    ##
         | 
| 98 133 | 
             
                    # Retrieves a list of buckets for the given project.
         | 
| 99 134 | 
             
                    #
         | 
| @@ -43,7 +43,7 @@ module Google | |
| 43 43 | 
             
                                   timeout: nil, open_timeout: nil, read_timeout: nil,
         | 
| 44 44 | 
             
                                   send_timeout: nil, host: nil, quota_project: nil,
         | 
| 45 45 | 
             
                                   max_elapsed_time: nil, base_interval: nil, max_interval: nil,
         | 
| 46 | 
            -
                                   multiplier: nil
         | 
| 46 | 
            +
                                   multiplier: nil, upload_chunk_size: nil
         | 
| 47 47 | 
             
                      @project = project
         | 
| 48 48 | 
             
                      @credentials = credentials
         | 
| 49 49 | 
             
                      @service = API::StorageService.new
         | 
| @@ -65,6 +65,7 @@ module Google | |
| 65 65 | 
             
                      @service.request_options.max_interval = max_interval if max_interval
         | 
| 66 66 | 
             
                      @service.request_options.multiplier = multiplier if multiplier
         | 
| 67 67 | 
             
                      @service.request_options.add_invocation_id_header = true
         | 
| 68 | 
            +
                      @service.request_options.upload_chunk_size = upload_chunk_size if upload_chunk_size
         | 
| 68 69 | 
             
                      @service.authorization = @credentials.client if @credentials
         | 
| 69 70 | 
             
                      @service.root_url = host if host
         | 
| 70 71 | 
             
                    end
         | 
| @@ -794,6 +795,18 @@ module Google | |
| 794 795 | 
             
                      "#{self.class}(#{@project})"
         | 
| 795 796 | 
             
                    end
         | 
| 796 797 |  | 
| 798 | 
            +
                    ##
         | 
| 799 | 
            +
                    # Add custom Google extension headers to the requests that use the signed URLs.
         | 
| 800 | 
            +
                    def add_custom_headers headers
         | 
| 801 | 
            +
                      @service.request_options.header.merge! headers
         | 
| 802 | 
            +
                    end
         | 
| 803 | 
            +
             | 
| 804 | 
            +
                    ##
         | 
| 805 | 
            +
                    # Add custom Google extension header to the requests that use the signed URLs.
         | 
| 806 | 
            +
                    def add_custom_header header_name, header_value
         | 
| 807 | 
            +
                      @service.request_options.header[header_name] = header_value
         | 
| 808 | 
            +
                    end
         | 
| 809 | 
            +
             | 
| 797 810 | 
             
                    protected
         | 
| 798 811 |  | 
| 799 812 | 
             
                    def user_project user_project
         | 
    
        data/lib/google/cloud/storage.rb
    CHANGED
    
    | @@ -67,6 +67,9 @@ module Google | |
| 67 67 | 
             
                  # @param [Integer] send_timeout How long, in seconds, before receiving response from server times out. Optional.
         | 
| 68 68 | 
             
                  # @param [String] endpoint Override of the endpoint host name. Optional.
         | 
| 69 69 | 
             
                  #   If the param is nil, uses the default endpoint.
         | 
| 70 | 
            +
                  # @param [Integer] upload_chunk_size The chunk size of storage upload, in bytes.
         | 
| 71 | 
            +
                  #                  The default value is 100 MB, i.e. 104_857_600 bytes. To disable chunking and upload
         | 
| 72 | 
            +
                  #                  the complete file regardless of size, pass 0 as the chunk size.
         | 
| 70 73 | 
             
                  # @param [String] project Alias for the `project_id` argument. Deprecated.
         | 
| 71 74 | 
             
                  # @param [String] keyfile Alias for the `credentials` argument.
         | 
| 72 75 | 
             
                  #   Deprecated.
         | 
| @@ -89,7 +92,7 @@ module Google | |
| 89 92 | 
             
                               timeout: nil, open_timeout: nil, read_timeout: nil,
         | 
| 90 93 | 
             
                               send_timeout: nil, endpoint: nil, project: nil, keyfile: nil,
         | 
| 91 94 | 
             
                               max_elapsed_time: nil, base_interval: nil, max_interval: nil,
         | 
| 92 | 
            -
                               multiplier: nil
         | 
| 95 | 
            +
                               multiplier: nil, upload_chunk_size: nil
         | 
| 93 96 | 
             
                    scope             ||= configure.scope
         | 
| 94 97 | 
             
                    retries           ||= configure.retries
         | 
| 95 98 | 
             
                    timeout           ||= configure.timeout
         | 
| @@ -102,6 +105,7 @@ module Google | |
| 102 105 | 
             
                    base_interval     ||= configure.base_interval
         | 
| 103 106 | 
             
                    max_interval      ||= configure.max_interval
         | 
| 104 107 | 
             
                    multiplier        ||= configure.multiplier
         | 
| 108 | 
            +
                    upload_chunk_size ||= configure.upload_chunk_size
         | 
| 105 109 |  | 
| 106 110 | 
             
                    unless credentials.is_a? Google::Auth::Credentials
         | 
| 107 111 | 
             
                      credentials = Storage::Credentials.new credentials, scope: scope
         | 
| @@ -117,7 +121,7 @@ module Google | |
| 117 121 | 
             
                        read_timeout: read_timeout, send_timeout: send_timeout,
         | 
| 118 122 | 
             
                        host: endpoint, quota_project: configure.quota_project,
         | 
| 119 123 | 
             
                        max_elapsed_time: max_elapsed_time, base_interval: base_interval,
         | 
| 120 | 
            -
                        max_interval: max_interval, multiplier: multiplier
         | 
| 124 | 
            +
                        max_interval: max_interval, multiplier: multiplier, upload_chunk_size: upload_chunk_size
         | 
| 121 125 | 
             
                      )
         | 
| 122 126 | 
             
                    )
         | 
| 123 127 | 
             
                  end
         | 
| @@ -141,6 +145,9 @@ module Google | |
| 141 145 | 
             
                  # @param [Integer] send_timeout How long, in seconds, before receiving response from server times out. Optional.
         | 
| 142 146 | 
             
                  # @param [String] endpoint Override of the endpoint host name. Optional.
         | 
| 143 147 | 
             
                  #   If the param is nil, uses the default endpoint.
         | 
| 148 | 
            +
                  # @param [Integer] upload_chunk_size The chunk size of storage upload, in bytes.
         | 
| 149 | 
            +
                  #                  The default value is 100 MB, i.e. 104_857_600 bytes. To disable chunking and upload
         | 
| 150 | 
            +
                  #                  the complete file regardless of size, pass 0 as the chunk size.
         | 
| 144 151 | 
             
                  #
         | 
| 145 152 | 
             
                  # @return [Google::Cloud::Storage::Project]
         | 
| 146 153 | 
             
                  #
         | 
| @@ -159,7 +166,7 @@ module Google | |
| 159 166 | 
             
                  def self.anonymous retries: nil, timeout: nil, open_timeout: nil,
         | 
| 160 167 | 
             
                                     read_timeout: nil, send_timeout: nil, endpoint: nil,
         | 
| 161 168 | 
             
                                     max_elapsed_time: nil, base_interval: nil, max_interval: nil,
         | 
| 162 | 
            -
                                     multiplier: nil
         | 
| 169 | 
            +
                                     multiplier: nil, upload_chunk_size: nil
         | 
| 163 170 | 
             
                    open_timeout ||= timeout
         | 
| 164 171 | 
             
                    read_timeout ||= timeout
         | 
| 165 172 | 
             
                    send_timeout ||= timeout
         | 
| @@ -168,7 +175,7 @@ module Google | |
| 168 175 | 
             
                        nil, nil, retries: retries, timeout: timeout, open_timeout: open_timeout,
         | 
| 169 176 | 
             
                        read_timeout: read_timeout, send_timeout: send_timeout, host: endpoint,
         | 
| 170 177 | 
             
                        max_elapsed_time: max_elapsed_time, base_interval: base_interval,
         | 
| 171 | 
            -
                        max_interval: max_interval, multiplier: multiplier
         | 
| 178 | 
            +
                        max_interval: max_interval, multiplier: multiplier, upload_chunk_size: upload_chunk_size
         | 
| 172 179 | 
             
                      )
         | 
| 173 180 | 
             
                    )
         | 
| 174 181 | 
             
                  end
         | 
| @@ -202,6 +209,7 @@ module Google | |
| 202 209 | 
             
                  # * `open_timeout` - (Integer) How long, in seconds, before failed connections time out.
         | 
| 203 210 | 
             
                  # * `read_timeout` - (Integer) How long, in seconds, before requests time out.
         | 
| 204 211 | 
             
                  # * `send_timeout` - (Integer) How long, in seconds, before receiving response from server times out.
         | 
| 212 | 
            +
                  # * `upload_chunk_size` - (Integer) The chunk size of storage upload, in bytes.
         | 
| 205 213 | 
             
                  #
         | 
| 206 214 | 
             
                  # @return [Google::Cloud::Config] The configuration object the
         | 
| 207 215 | 
             
                  #   Google::Cloud::Storage library uses.
         | 
    
        data/lib/google-cloud-storage.rb
    CHANGED
    
    | @@ -55,6 +55,9 @@ module Google | |
| 55 55 | 
             
                # @param [Integer] open_timeout How long, in seconds, before failed connections time out. Optional.
         | 
| 56 56 | 
             
                # @param [Integer] read_timeout How long, in seconds, before requests time out. Optional.
         | 
| 57 57 | 
             
                # @param [Integer] send_timeout How long, in seconds, before receiving response from server times out. Optional.
         | 
| 58 | 
            +
                # @param [Integer] upload_chunk_size The chunk size of storage upload, in bytes.
         | 
| 59 | 
            +
                #                  The default value is 100 MB, i.e. 104_857_600 bytes. To disable chunking and upload
         | 
| 60 | 
            +
                #                  the complete file regardless of size, pass 0 as the chunk size.
         | 
| 58 61 | 
             
                #
         | 
| 59 62 | 
             
                # @return [Google::Cloud::Storage::Project]
         | 
| 60 63 | 
             
                #
         | 
| @@ -74,7 +77,7 @@ module Google | |
| 74 77 | 
             
                #   readonly_storage = gcloud.storage scope: readonly_scope
         | 
| 75 78 | 
             
                #
         | 
| 76 79 | 
             
                def storage scope: nil, retries: nil, timeout: nil, open_timeout: nil, read_timeout: nil, send_timeout: nil,
         | 
| 77 | 
            -
                            max_elapsed_time: nil, base_interval: nil, max_interval: nil, multiplier: nil
         | 
| 80 | 
            +
                            max_elapsed_time: nil, base_interval: nil, max_interval: nil, multiplier: nil, upload_chunk_size: nil
         | 
| 78 81 | 
             
                  Google::Cloud.storage @project, @keyfile, scope: scope,
         | 
| 79 82 | 
             
                                                            retries: (retries || @retries),
         | 
| 80 83 | 
             
                                                            timeout: (timeout || @timeout),
         | 
| @@ -84,7 +87,8 @@ module Google | |
| 84 87 | 
             
                                                            max_elapsed_time: max_elapsed_time,
         | 
| 85 88 | 
             
                                                            base_interval: base_interval,
         | 
| 86 89 | 
             
                                                            max_interval: max_interval,
         | 
| 87 | 
            -
                                                            multiplier: multiplier
         | 
| 90 | 
            +
                                                            multiplier: multiplier,
         | 
| 91 | 
            +
                                                            upload_chunk_size: upload_chunk_size
         | 
| 88 92 | 
             
                end
         | 
| 89 93 |  | 
| 90 94 | 
             
                ##
         | 
| @@ -120,6 +124,9 @@ module Google | |
| 120 124 | 
             
                # @param [Integer] open_timeout How long, in seconds, before failed connections time out. Optional.
         | 
| 121 125 | 
             
                # @param [Integer] read_timeout How long, in seconds, before requests time out. Optional.
         | 
| 122 126 | 
             
                # @param [Integer] send_timeout How long, in seconds, before receiving response from server times out. Optional.
         | 
| 127 | 
            +
                # @param [Integer] upload_chunk_size The chunk size of storage upload, in bytes.
         | 
| 128 | 
            +
                #                  The default value is 100 MB, i.e. 104_857_600 bytes. To disable chunking and upload
         | 
| 129 | 
            +
                #                  the complete file regardless of size, pass 0 as the chunk size.
         | 
| 123 130 | 
             
                #
         | 
| 124 131 | 
             
                # @return [Google::Cloud::Storage::Project]
         | 
| 125 132 | 
             
                #
         | 
| @@ -134,7 +141,8 @@ module Google | |
| 134 141 | 
             
                #
         | 
| 135 142 | 
             
                def self.storage project_id = nil, credentials = nil, scope: nil,
         | 
| 136 143 | 
             
                                 retries: nil, timeout: nil, open_timeout: nil, read_timeout: nil, send_timeout: nil,
         | 
| 137 | 
            -
                                 max_elapsed_time: nil, base_interval: nil, max_interval: nil, multiplier: nil
         | 
| 144 | 
            +
                                 max_elapsed_time: nil, base_interval: nil, max_interval: nil, multiplier: nil,
         | 
| 145 | 
            +
                                 upload_chunk_size: nil
         | 
| 138 146 | 
             
                  require "google/cloud/storage"
         | 
| 139 147 | 
             
                  Google::Cloud::Storage.new project_id: project_id,
         | 
| 140 148 | 
             
                                             credentials: credentials,
         | 
| @@ -147,7 +155,8 @@ module Google | |
| 147 155 | 
             
                                             max_elapsed_time: max_elapsed_time,
         | 
| 148 156 | 
             
                                             base_interval: base_interval,
         | 
| 149 157 | 
             
                                             max_interval: max_interval,
         | 
| 150 | 
            -
                                             multiplier: multiplier
         | 
| 158 | 
            +
                                             multiplier: multiplier,
         | 
| 159 | 
            +
                                             upload_chunk_size: upload_chunk_size
         | 
| 151 160 | 
             
                end
         | 
| 152 161 | 
             
              end
         | 
| 153 162 | 
             
            end
         | 
| @@ -182,6 +191,7 @@ Google::Cloud.configure.add_config! :storage do |config| | |
| 182 191 | 
             
              config.add_field! :open_timeout, nil, match: Integer
         | 
| 183 192 | 
             
              config.add_field! :read_timeout, nil, match: Integer
         | 
| 184 193 | 
             
              config.add_field! :send_timeout, nil, match: Integer
         | 
| 194 | 
            +
              config.add_field! :upload_chunk_size, nil, match: Integer
         | 
| 185 195 | 
             
              # TODO: Remove once discovery document is updated.
         | 
| 186 196 | 
             
              config.add_field! :endpoint, "https://storage.googleapis.com/", match: String
         | 
| 187 197 | 
             
            end
         | 
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: google-cloud-storage
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 1. | 
| 4 | 
            +
              version: 1.45.0
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors:
         | 
| 7 7 | 
             
            - Mike Moore
         | 
| @@ -9,7 +9,7 @@ authors: | |
| 9 9 | 
             
            autorequire: 
         | 
| 10 10 | 
             
            bindir: bin
         | 
| 11 11 | 
             
            cert_chain: []
         | 
| 12 | 
            -
            date:  | 
| 12 | 
            +
            date: 2023-11-06 00:00:00.000000000 Z
         | 
| 13 13 | 
             
            dependencies:
         | 
| 14 14 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 15 15 | 
             
              name: google-cloud-core
         | 
| @@ -45,14 +45,14 @@ dependencies: | |
| 45 45 | 
             
                requirements:
         | 
| 46 46 | 
             
                - - "~>"
         | 
| 47 47 | 
             
                  - !ruby/object:Gem::Version
         | 
| 48 | 
            -
                    version: 0. | 
| 48 | 
            +
                    version: 0.29.0
         | 
| 49 49 | 
             
              type: :runtime
         | 
| 50 50 | 
             
              prerelease: false
         | 
| 51 51 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 52 52 | 
             
                requirements:
         | 
| 53 53 | 
             
                - - "~>"
         | 
| 54 54 | 
             
                  - !ruby/object:Gem::Version
         | 
| 55 | 
            -
                    version: 0. | 
| 55 | 
            +
                    version: 0.29.0
         | 
| 56 56 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 57 57 | 
             
              name: googleauth
         | 
| 58 58 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -332,7 +332,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 332 332 | 
             
                - !ruby/object:Gem::Version
         | 
| 333 333 | 
             
                  version: '0'
         | 
| 334 334 | 
             
            requirements: []
         | 
| 335 | 
            -
            rubygems_version: 3. | 
| 335 | 
            +
            rubygems_version: 3.4.19
         | 
| 336 336 | 
             
            signing_key: 
         | 
| 337 337 | 
             
            specification_version: 4
         | 
| 338 338 | 
             
            summary: API Client library for Google Cloud Storage
         |