kura 0.6.1 → 1.0.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/ChangeLog.md +25 -0
 - data/lib/kura/client.rb +63 -13
 - data/lib/kura/version.rb +1 -1
 - metadata +3 -3
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: d1debc77b4a5c71c844cad85bc06c93603a24eb4818b8b9e30458d5a242d6f05
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 510c51094d84046376bf201da775397dc03a9c6e994ae86fe704413f7a14024f
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 10ffe28579b192cf3e48ef234c28f62cc3201153dada35245e93e6e9864380e195fda959d02c7a5268bf31a2a47e9b1b8afd11363651121c04a0676596ff5f16
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: b5e198bb1d4d8c11fb87ee855af973fe42faec35b3bb3dc4ffe82baacd221f80ff84e14a319cac1ee18670139c5b6e06c71f0fb76bf7326d53e99288dab13c5c
         
     | 
    
        data/ChangeLog.md
    CHANGED
    
    | 
         @@ -1,3 +1,28 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # 1.0.0
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            ## Breaking Changes
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
            * The default value of `use_legacy_sql` is now turn to false.
         
     | 
| 
      
 6 
     | 
    
         
            +
             
     | 
| 
      
 7 
     | 
    
         
            +
            ## Enhancements
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
            * Now load/query/extract/copy methods accept keyword rest argument and pass the options to the JobConfiguration properties.
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
            # 0.6.3
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
            ## Changes
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
            * Add `convert_numeric_to_float` keyword argument in `list_tabledata` method.
         
     | 
| 
      
 16 
     | 
    
         
            +
              If `convert_numeric_to_float: true` is specified, the value from a NUMMERIC column will be converted to Float.
         
     | 
| 
      
 17 
     | 
    
         
            +
              The default value for `convert_numeric_to_float` is true.
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
            # 0.6.2
         
     | 
| 
      
 20 
     | 
    
         
            +
             
     | 
| 
      
 21 
     | 
    
         
            +
            ## Enhancements
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
            * Support ruby 3.0.
         
     | 
| 
      
 24 
     | 
    
         
            +
            * Support range partitioning and time partitioning parameter for load job configuration.
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
       1 
26 
     | 
    
         
             
            # 0.6.1
         
     | 
| 
       2 
27 
     | 
    
         | 
| 
       3 
28 
     | 
    
         
             
            ## Enhancements
         
     | 
    
        data/lib/kura/client.rb
    CHANGED
    
    | 
         @@ -199,7 +199,7 @@ module Kura 
     | 
|
| 
       199 
199 
     | 
    
         
             
                def insert_table(dataset_id, table_id, project_id: @default_project_id, expiration_time: nil,
         
     | 
| 
       200 
200 
     | 
    
         
             
                                 friendly_name: nil, schema: nil, description: nil,
         
     | 
| 
       201 
201 
     | 
    
         
             
                                 query: nil, external_data_configuration: nil,
         
     | 
| 
       202 
     | 
    
         
            -
                                 use_legacy_sql:  
     | 
| 
      
 202 
     | 
    
         
            +
                                 use_legacy_sql: false,
         
     | 
| 
       203 
203 
     | 
    
         
             
                                 time_partitioning: nil,
         
     | 
| 
       204 
204 
     | 
    
         
             
                                 &blk)
         
     | 
| 
       205 
205 
     | 
    
         
             
                  if expiration_time
         
     | 
| 
         @@ -220,7 +220,7 @@ module Kura 
     | 
|
| 
       220 
220 
     | 
    
         
             
                    view: view,
         
     | 
| 
       221 
221 
     | 
    
         
             
                    external_data_configuration: external_data_configuration)
         
     | 
| 
       222 
222 
     | 
    
         
             
                  if time_partitioning
         
     | 
| 
       223 
     | 
    
         
            -
                    table.time_partitioning = Google::Apis::BigqueryV2::TimePartitioning.new(time_partitioning)
         
     | 
| 
      
 223 
     | 
    
         
            +
                    table.time_partitioning = Google::Apis::BigqueryV2::TimePartitioning.new(**time_partitioning)
         
     | 
| 
       224 
224 
     | 
    
         
             
                  end
         
     | 
| 
       225 
225 
     | 
    
         
             
                  @api.insert_table(project_id, dataset_id, table, &blk)
         
     | 
| 
       226 
226 
     | 
    
         
             
                rescue
         
     | 
| 
         @@ -247,7 +247,7 @@ module Kura 
     | 
|
| 
       247 
247 
     | 
    
         
             
                  process_error($!)
         
     | 
| 
       248 
248 
     | 
    
         
             
                end
         
     | 
| 
       249 
249 
     | 
    
         | 
| 
       250 
     | 
    
         
            -
                def _convert_tabledata_field(x, field_info)
         
     | 
| 
      
 250 
     | 
    
         
            +
                def _convert_tabledata_field(x, field_info, convert_numeric_to_float: true)
         
     | 
| 
       251 
251 
     | 
    
         
             
                  if x.nil? and (field_info["mode"] == "NULLABLE" or field_info["mode"].nil?) # The tables created by New BigQuery Console could have schema without mode...
         
     | 
| 
       252 
252 
     | 
    
         
             
                    return nil
         
     | 
| 
       253 
253 
     | 
    
         
             
                  end
         
     | 
| 
         @@ -272,35 +272,41 @@ module Kura 
     | 
|
| 
       272 
272 
     | 
    
         
             
                  when "TIMESTAMP"
         
     | 
| 
       273 
273 
     | 
    
         
             
                    Time.at(Float(x)).utc.iso8601(6)
         
     | 
| 
       274 
274 
     | 
    
         
             
                  when "RECORD"
         
     | 
| 
       275 
     | 
    
         
            -
                    _convert_tabledata_row(x, field_info["fields"])
         
     | 
| 
      
 275 
     | 
    
         
            +
                    _convert_tabledata_row(x, field_info["fields"], convert_numeric_to_float: convert_numeric_to_float)
         
     | 
| 
      
 276 
     | 
    
         
            +
                  when "NUMERIC"
         
     | 
| 
      
 277 
     | 
    
         
            +
                    if convert_numeric_to_float
         
     | 
| 
      
 278 
     | 
    
         
            +
                      Float(x)
         
     | 
| 
      
 279 
     | 
    
         
            +
                    else
         
     | 
| 
      
 280 
     | 
    
         
            +
                      x
         
     | 
| 
      
 281 
     | 
    
         
            +
                    end
         
     | 
| 
       276 
282 
     | 
    
         
             
                  else
         
     | 
| 
       277 
283 
     | 
    
         
             
                    x
         
     | 
| 
       278 
284 
     | 
    
         
             
                  end
         
     | 
| 
       279 
285 
     | 
    
         
             
                end
         
     | 
| 
       280 
286 
     | 
    
         | 
| 
       281 
     | 
    
         
            -
                def _convert_tabledata_row(row, schema)
         
     | 
| 
      
 287 
     | 
    
         
            +
                def _convert_tabledata_row(row, schema, convert_numeric_to_float: true)
         
     | 
| 
       282 
288 
     | 
    
         
             
                  (row.respond_to?(:f) ? row.f : row["f"]).zip(schema).each_with_object({}) do |(v, s), tbl|
         
     | 
| 
       283 
289 
     | 
    
         
             
                    v = JSON.parse(v.to_json)
         
     | 
| 
       284 
290 
     | 
    
         
             
                    if s["mode"] == "REPEATED"
         
     | 
| 
       285 
     | 
    
         
            -
                      tbl[s["name"]] = v["v"].map{|c| _convert_tabledata_field(c["v"], s) }
         
     | 
| 
      
 291 
     | 
    
         
            +
                      tbl[s["name"]] = v["v"].map{|c| _convert_tabledata_field(c["v"], s, convert_numeric_to_float: convert_numeric_to_float) }
         
     | 
| 
       286 
292 
     | 
    
         
             
                    else
         
     | 
| 
       287 
     | 
    
         
            -
                      tbl[s["name"]] = _convert_tabledata_field(v["v"], s)
         
     | 
| 
      
 293 
     | 
    
         
            +
                      tbl[s["name"]] = _convert_tabledata_field(v["v"], s, convert_numeric_to_float: convert_numeric_to_float)
         
     | 
| 
       288 
294 
     | 
    
         
             
                    end
         
     | 
| 
       289 
295 
     | 
    
         
             
                  end
         
     | 
| 
       290 
296 
     | 
    
         
             
                end
         
     | 
| 
       291 
297 
     | 
    
         | 
| 
       292 
     | 
    
         
            -
                def format_tabledata(r, schema)
         
     | 
| 
      
 298 
     | 
    
         
            +
                def format_tabledata(r, schema, convert_numeric_to_float: true)
         
     | 
| 
       293 
299 
     | 
    
         
             
                  {
         
     | 
| 
       294 
300 
     | 
    
         
             
                    total_rows: r.total_rows.to_i,
         
     | 
| 
       295 
301 
     | 
    
         
             
                    next_token: r.page_token,
         
     | 
| 
       296 
302 
     | 
    
         
             
                    rows: (r.rows || []).map do |row|
         
     | 
| 
       297 
     | 
    
         
            -
                      _convert_tabledata_row(row, schema)
         
     | 
| 
      
 303 
     | 
    
         
            +
                      _convert_tabledata_row(row, schema, convert_numeric_to_float: convert_numeric_to_float)
         
     | 
| 
       298 
304 
     | 
    
         
             
                    end
         
     | 
| 
       299 
305 
     | 
    
         
             
                  }
         
     | 
| 
       300 
306 
     | 
    
         
             
                end
         
     | 
| 
       301 
307 
     | 
    
         
             
                private :format_tabledata
         
     | 
| 
       302 
308 
     | 
    
         | 
| 
       303 
     | 
    
         
            -
                def list_tabledata(dataset_id, table_id, project_id: @default_project_id, start_index: 0, max_result: 100, page_token: nil, schema: nil, &blk)
         
     | 
| 
      
 309 
     | 
    
         
            +
                def list_tabledata(dataset_id, table_id, project_id: @default_project_id, start_index: 0, max_result: 100, page_token: nil, schema: nil, convert_numeric_to_float: true, &blk)
         
     | 
| 
       304 
310 
     | 
    
         
             
                  if schema.nil?
         
     | 
| 
       305 
311 
     | 
    
         
             
                    _t = table(dataset_id, table_id, project_id: project_id)
         
     | 
| 
       306 
312 
     | 
    
         
             
                    if _t
         
     | 
| 
         @@ -314,13 +320,13 @@ module Kura 
     | 
|
| 
       314 
320 
     | 
    
         
             
                  if blk
         
     | 
| 
       315 
321 
     | 
    
         
             
                    @api.list_table_data(project_id, dataset_id, table_id, max_results: max_result, start_index: start_index, page_token: page_token) do |r, err|
         
     | 
| 
       316 
322 
     | 
    
         
             
                      if r
         
     | 
| 
       317 
     | 
    
         
            -
                        r = format_tabledata(r, schema)
         
     | 
| 
      
 323 
     | 
    
         
            +
                        r = format_tabledata(r, schema, convert_numeric_to_float: convert_numeric_to_float)
         
     | 
| 
       318 
324 
     | 
    
         
             
                      end
         
     | 
| 
       319 
325 
     | 
    
         
             
                      blk.call(r, err)
         
     | 
| 
       320 
326 
     | 
    
         
             
                    end
         
     | 
| 
       321 
327 
     | 
    
         
             
                  else
         
     | 
| 
       322 
328 
     | 
    
         
             
                    r = @api.list_table_data(project_id, dataset_id, table_id, max_results: max_result, start_index: start_index, page_token: page_token)
         
     | 
| 
       323 
     | 
    
         
            -
                    format_tabledata(r, schema)
         
     | 
| 
      
 329 
     | 
    
         
            +
                    format_tabledata(r, schema, convert_numeric_to_float: convert_numeric_to_float)
         
     | 
| 
       324 
330 
     | 
    
         
             
                  end
         
     | 
| 
       325 
331 
     | 
    
         
             
                rescue
         
     | 
| 
       326 
332 
     | 
    
         
             
                  process_error($!)
         
     | 
| 
         @@ -402,7 +408,7 @@ module Kura 
     | 
|
| 
       402 
408 
     | 
    
         
             
                          priority: "INTERACTIVE",
         
     | 
| 
       403 
409 
     | 
    
         
             
                          use_query_cache: true,
         
     | 
| 
       404 
410 
     | 
    
         
             
                          user_defined_function_resources: nil,
         
     | 
| 
       405 
     | 
    
         
            -
                          use_legacy_sql:  
     | 
| 
      
 411 
     | 
    
         
            +
                          use_legacy_sql: false,
         
     | 
| 
       406 
412 
     | 
    
         
             
                          maximum_billing_tier: nil,
         
     | 
| 
       407 
413 
     | 
    
         
             
                          maximum_bytes_billed: nil,
         
     | 
| 
       408 
414 
     | 
    
         
             
                          external_data_configuration: nil,
         
     | 
| 
         @@ -411,6 +417,7 @@ module Kura 
     | 
|
| 
       411 
417 
     | 
    
         
             
                          job_id: nil,
         
     | 
| 
       412 
418 
     | 
    
         
             
                          wait: nil,
         
     | 
| 
       413 
419 
     | 
    
         
             
                          dry_run: false,
         
     | 
| 
      
 420 
     | 
    
         
            +
                          **kwrest,
         
     | 
| 
       414 
421 
     | 
    
         
             
                          &blk)
         
     | 
| 
       415 
422 
     | 
    
         
             
                  configuration = Google::Apis::BigqueryV2::JobConfiguration.new(
         
     | 
| 
       416 
423 
     | 
    
         
             
                    query: Google::Apis::BigqueryV2::JobConfigurationQuery.new(
         
     | 
| 
         @@ -451,6 +458,13 @@ module Kura 
     | 
|
| 
       451 
458 
     | 
    
         
             
                  if external_data_configuration
         
     | 
| 
       452 
459 
     | 
    
         
             
                    configuration.query.table_definitions = external_data_configuration
         
     | 
| 
       453 
460 
     | 
    
         
             
                  end
         
     | 
| 
      
 461 
     | 
    
         
            +
                  kwrest.each do |kw, opt|
         
     | 
| 
      
 462 
     | 
    
         
            +
                    if configuration.query.respond_to?("#{kw}=")
         
     | 
| 
      
 463 
     | 
    
         
            +
                      configuration.query.__send__("#{kw}=", opt)
         
     | 
| 
      
 464 
     | 
    
         
            +
                    else
         
     | 
| 
      
 465 
     | 
    
         
            +
                      raise ArgumentError, "Unknown keyword argument for Kura::Client#query: #{kw}"
         
     | 
| 
      
 466 
     | 
    
         
            +
                    end
         
     | 
| 
      
 467 
     | 
    
         
            +
                  end
         
     | 
| 
       454 
468 
     | 
    
         
             
                  insert_job(configuration, wait: wait, job_id: job_id, project_id: job_project_id, &blk)
         
     | 
| 
       455 
469 
     | 
    
         
             
                end
         
     | 
| 
       456 
470 
     | 
    
         | 
| 
         @@ -494,14 +508,25 @@ module Kura 
     | 
|
| 
       494 
508 
     | 
    
         
             
                         quote: '"', skip_leading_rows: 0,
         
     | 
| 
       495 
509 
     | 
    
         
             
                         source_format: "CSV",
         
     | 
| 
       496 
510 
     | 
    
         
             
                         autodetect: false,
         
     | 
| 
      
 511 
     | 
    
         
            +
                         range_partitioning: nil,
         
     | 
| 
      
 512 
     | 
    
         
            +
                         time_partitioning: nil,
         
     | 
| 
       497 
513 
     | 
    
         
             
                         project_id: @default_project_id,
         
     | 
| 
       498 
514 
     | 
    
         
             
                         job_project_id: @default_project_id,
         
     | 
| 
       499 
515 
     | 
    
         
             
                         job_id: nil,
         
     | 
| 
       500 
516 
     | 
    
         
             
                         file: nil, wait: nil,
         
     | 
| 
       501 
517 
     | 
    
         
             
                         dry_run: false,
         
     | 
| 
      
 518 
     | 
    
         
            +
                         **kwrest,
         
     | 
| 
       502 
519 
     | 
    
         
             
                         &blk)
         
     | 
| 
       503 
520 
     | 
    
         
             
                  write_disposition = mode_to_write_disposition(mode)
         
     | 
| 
       504 
521 
     | 
    
         
             
                  source_uris = [source_uris] if source_uris.is_a?(String)
         
     | 
| 
      
 522 
     | 
    
         
            +
                  case range_partitioning
         
     | 
| 
      
 523 
     | 
    
         
            +
                  when Hash
         
     | 
| 
      
 524 
     | 
    
         
            +
                    range_partitioning = Google::Apis::BigqueryV2::RangePartitioning.new(**range_partitioning)
         
     | 
| 
      
 525 
     | 
    
         
            +
                  end
         
     | 
| 
      
 526 
     | 
    
         
            +
                  case time_partitioning
         
     | 
| 
      
 527 
     | 
    
         
            +
                  when Hash
         
     | 
| 
      
 528 
     | 
    
         
            +
                    time_partitioning = Google::Apis::BigqueryV2::TimePartitioning.new(**time_partitioning)
         
     | 
| 
      
 529 
     | 
    
         
            +
                  end
         
     | 
| 
       505 
530 
     | 
    
         
             
                  configuration = Google::Apis::BigqueryV2::JobConfiguration.new(
         
     | 
| 
       506 
531 
     | 
    
         
             
                    load: Google::Apis::BigqueryV2::JobConfigurationLoad.new(
         
     | 
| 
       507 
532 
     | 
    
         
             
                      destination_table: Google::Apis::BigqueryV2::TableReference.new(
         
     | 
| 
         @@ -514,6 +539,8 @@ module Kura 
     | 
|
| 
       514 
539 
     | 
    
         
             
                      max_bad_records: max_bad_records,
         
     | 
| 
       515 
540 
     | 
    
         
             
                      ignore_unknown_values: normalize_parameter(ignore_unknown_values),
         
     | 
| 
       516 
541 
     | 
    
         
             
                      source_format: source_format,
         
     | 
| 
      
 542 
     | 
    
         
            +
                      range_partitioning: range_partitioning,
         
     | 
| 
      
 543 
     | 
    
         
            +
                      time_partitioning: time_partitioning,
         
     | 
| 
       517 
544 
     | 
    
         
             
                    )
         
     | 
| 
       518 
545 
     | 
    
         
             
                  )
         
     | 
| 
       519 
546 
     | 
    
         
             
                  if dry_run
         
     | 
| 
         @@ -535,6 +562,13 @@ module Kura 
     | 
|
| 
       535 
562 
     | 
    
         
             
                  unless file
         
     | 
| 
       536 
563 
     | 
    
         
             
                    configuration.load.source_uris = source_uris
         
     | 
| 
       537 
564 
     | 
    
         
             
                  end
         
     | 
| 
      
 565 
     | 
    
         
            +
                  kwrest.each do |kw, opt|
         
     | 
| 
      
 566 
     | 
    
         
            +
                    if configuration.load.respond_to?("#{kw}=")
         
     | 
| 
      
 567 
     | 
    
         
            +
                      configuration.load.__send__("#{kw}=", opt)
         
     | 
| 
      
 568 
     | 
    
         
            +
                    else
         
     | 
| 
      
 569 
     | 
    
         
            +
                      raise ArgumentError, "Unknown keyword argument for Kura::Client#load: #{kw}"
         
     | 
| 
      
 570 
     | 
    
         
            +
                    end
         
     | 
| 
      
 571 
     | 
    
         
            +
                  end
         
     | 
| 
       538 
572 
     | 
    
         
             
                  insert_job(configuration, media: file, wait: wait, job_id: job_id, project_id: job_project_id, &blk)
         
     | 
| 
       539 
573 
     | 
    
         
             
                end
         
     | 
| 
       540 
574 
     | 
    
         | 
| 
         @@ -548,6 +582,7 @@ module Kura 
     | 
|
| 
       548 
582 
     | 
    
         
             
                            job_id: nil,
         
     | 
| 
       549 
583 
     | 
    
         
             
                            wait: nil,
         
     | 
| 
       550 
584 
     | 
    
         
             
                            dry_run: false,
         
     | 
| 
      
 585 
     | 
    
         
            +
                            **kwrest,
         
     | 
| 
       551 
586 
     | 
    
         
             
                            &blk)
         
     | 
| 
       552 
587 
     | 
    
         
             
                  dest_uris = [ dest_uris ] if dest_uris.is_a?(String)
         
     | 
| 
       553 
588 
     | 
    
         
             
                  configuration = Google::Apis::BigqueryV2::JobConfiguration.new(
         
     | 
| 
         @@ -570,6 +605,13 @@ module Kura 
     | 
|
| 
       570 
605 
     | 
    
         
             
                    configuration.extract.field_delimiter = field_delimiter
         
     | 
| 
       571 
606 
     | 
    
         
             
                    configuration.extract.print_header = normalize_parameter(print_header)
         
     | 
| 
       572 
607 
     | 
    
         
             
                  end
         
     | 
| 
      
 608 
     | 
    
         
            +
                  kwrest.each do |kw, opt|
         
     | 
| 
      
 609 
     | 
    
         
            +
                    if configuration.extract.respond_to?("#{kw}=")
         
     | 
| 
      
 610 
     | 
    
         
            +
                      configuration.extract.__send__("#{kw}=", opt)
         
     | 
| 
      
 611 
     | 
    
         
            +
                    else
         
     | 
| 
      
 612 
     | 
    
         
            +
                      raise ArgumentError, "Unknown keyword argument for Kura::Client#extract: #{kw}"
         
     | 
| 
      
 613 
     | 
    
         
            +
                    end
         
     | 
| 
      
 614 
     | 
    
         
            +
                  end
         
     | 
| 
       573 
615 
     | 
    
         
             
                  insert_job(configuration, wait: wait, job_id: job_id, project_id: job_project_id, &blk)
         
     | 
| 
       574 
616 
     | 
    
         
             
                end
         
     | 
| 
       575 
617 
     | 
    
         | 
| 
         @@ -581,6 +623,7 @@ module Kura 
     | 
|
| 
       581 
623 
     | 
    
         
             
                         job_id: nil,
         
     | 
| 
       582 
624 
     | 
    
         
             
                         wait: nil,
         
     | 
| 
       583 
625 
     | 
    
         
             
                         dry_run: false,
         
     | 
| 
      
 626 
     | 
    
         
            +
                         **kwrest,
         
     | 
| 
       584 
627 
     | 
    
         
             
                         &blk)
         
     | 
| 
       585 
628 
     | 
    
         
             
                  write_disposition = mode_to_write_disposition(mode)
         
     | 
| 
       586 
629 
     | 
    
         
             
                  configuration = Google::Apis::BigqueryV2::JobConfiguration.new(
         
     | 
| 
         @@ -602,6 +645,13 @@ module Kura 
     | 
|
| 
       602 
645 
     | 
    
         
             
                    configuration.dry_run = true
         
     | 
| 
       603 
646 
     | 
    
         
             
                    wait = nil
         
     | 
| 
       604 
647 
     | 
    
         
             
                  end
         
     | 
| 
      
 648 
     | 
    
         
            +
                  kwrest.each do |kw, opt|
         
     | 
| 
      
 649 
     | 
    
         
            +
                    if configuration.copy.respond_to?("#{kw}=")
         
     | 
| 
      
 650 
     | 
    
         
            +
                      configuration.copy.__send__("#{kw}=", opt)
         
     | 
| 
      
 651 
     | 
    
         
            +
                    else
         
     | 
| 
      
 652 
     | 
    
         
            +
                      raise ArgumentError, "Unknown keyword argument for Kura::Client#copy: #{kw}"
         
     | 
| 
      
 653 
     | 
    
         
            +
                    end
         
     | 
| 
      
 654 
     | 
    
         
            +
                  end
         
     | 
| 
       605 
655 
     | 
    
         
             
                  insert_job(configuration, wait: wait, job_id: job_id, project_id: job_project_id, &blk)
         
     | 
| 
       606 
656 
     | 
    
         
             
                end
         
     | 
| 
       607 
657 
     | 
    
         | 
    
        data/lib/kura/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: kura
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 1.0.0
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Chikanaga Tomoyuki
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire:
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: exe
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date:  
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2022-04-18 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: google-apis-bigquery_v2
         
     | 
| 
         @@ -148,7 +148,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement 
     | 
|
| 
       148 
148 
     | 
    
         
             
                - !ruby/object:Gem::Version
         
     | 
| 
       149 
149 
     | 
    
         
             
                  version: '0'
         
     | 
| 
       150 
150 
     | 
    
         
             
            requirements: []
         
     | 
| 
       151 
     | 
    
         
            -
            rubygems_version: 3. 
     | 
| 
      
 151 
     | 
    
         
            +
            rubygems_version: 3.3.7
         
     | 
| 
       152 
152 
     | 
    
         
             
            signing_key:
         
     | 
| 
       153 
153 
     | 
    
         
             
            specification_version: 4
         
     | 
| 
       154 
154 
     | 
    
         
             
            summary: Interface to BigQuery API v2.
         
     |