couchbase 3.5.6-x86_64-darwin → 3.6.0-x86_64-darwin

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.
Files changed (30) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +2 -2
  3. data/lib/active_support/cache/couchbase_store.rb +1 -1
  4. data/lib/couchbase/3.1/libcouchbase.bundle +0 -0
  5. data/lib/couchbase/3.2/libcouchbase.bundle +0 -0
  6. data/lib/couchbase/3.3/libcouchbase.bundle +0 -0
  7. data/lib/couchbase/3.4/libcouchbase.bundle +0 -0
  8. data/lib/couchbase/cluster.rb +1 -1
  9. data/lib/couchbase/collection.rb +1 -1
  10. data/lib/couchbase/collection_options.rb +2 -2
  11. data/lib/couchbase/libcouchbase.rb +1 -1
  12. data/lib/couchbase/management/analytics_index_manager.rb +4 -4
  13. data/lib/couchbase/management/bucket_manager.rb +8 -2
  14. data/lib/couchbase/protostellar/cluster.rb +2 -2
  15. data/lib/couchbase/protostellar/collection.rb +1 -1
  16. data/lib/couchbase/protostellar/management/collection_query_index_manager.rb +1 -1
  17. data/lib/couchbase/protostellar/request_generator/admin/bucket.rb +4 -4
  18. data/lib/couchbase/protostellar/request_generator/admin/collection.rb +6 -6
  19. data/lib/couchbase/protostellar/request_generator/admin/query.rb +13 -13
  20. data/lib/couchbase/protostellar/request_generator/kv.rb +25 -25
  21. data/lib/couchbase/protostellar/request_generator/query.rb +4 -4
  22. data/lib/couchbase/protostellar/request_generator/search.rb +25 -25
  23. data/lib/couchbase/protostellar/response_converter/search.rb +1 -1
  24. data/lib/couchbase/protostellar/retry/reason.rb +1 -1
  25. data/lib/couchbase/protostellar/timeouts.rb +1 -1
  26. data/lib/couchbase/scope.rb +1 -1
  27. data/lib/couchbase/transcoder_flags.rb +1 -1
  28. data/lib/couchbase/utils/stdlib_logger_adapter.rb +1 -1
  29. data/lib/couchbase/version.rb +1 -1
  30. metadata +6 -8
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9382c43ae0c23e06c63d24be4c80985e4ec97b306aa6cf27eb927cbdd9d6ca93
4
- data.tar.gz: d3a0fe1cb8c55022ae75df40ae63d592ec0367aec4b2b68b5d209de24875acbd
3
+ metadata.gz: 8ceb43c059d97f5afee2ea45bcc06436a3c67b62fe22f302672812fccc7f9921
4
+ data.tar.gz: c38cad644b03765d1f560eff2255c5b6eb509483a96866a2fa3abb4994c06a0a
5
5
  SHA512:
6
- metadata.gz: e5b6f0b88b1c8b9a30873ed4b932018d00a49ef0bacd25013850b80197507d9e2221f495a006c1b2a3f78c4a85b31890b744e7a4c57795d6f6d525008f34b859
7
- data.tar.gz: 410f1f84469af2c0b513c5b1e4ee06fd9bf37e902b80ea64c1bad9410809e89497b8eecb2898b09628a295a34e89692c7ed385e15ab7d8760472a7b06f83b52d
6
+ metadata.gz: 8a13c0d6acafeefa4543001899c9ed4d1f12de4399fe098d779c9fd5f793997524b7f66473e434300be34ce42603a84b95d55f0be2674135c2fbe0d862603872
7
+ data.tar.gz: 196ea4d6067c447a4072d9ac0d89a051ec3bafef25a084834a2a84364074a80b0510d5bde84156a2efb3f33aa624e01c49984db6f0f285683047dfb6dbbc2672
data/README.md CHANGED
@@ -18,12 +18,12 @@ Please attach version information to the ticket/post. To obtain this information
18
18
 
19
19
  ## Installation
20
20
 
21
- The library has been tested with MRI 3.1, 3.2 and 3.3. Supported platforms are Linux and MacOS.
21
+ The library has been tested with MRI 3.1, 3.2, 3.3 and 3.4. Supported platforms are Linux and MacOS.
22
22
 
23
23
  Add this line to your application's Gemfile:
24
24
 
25
25
  ```ruby
26
- gem "couchbase", "3.5.6"
26
+ gem "couchbase", "3.6.0"
27
27
  ```
28
28
 
29
29
  And then execute:
@@ -316,7 +316,7 @@ module ActiveSupport
316
316
  @couchbase_options[:connection_string],
317
317
  ::Couchbase::Options::Cluster(authenticator: ::Couchbase::PasswordAuthenticator.new(
318
318
  @couchbase_options[:username], @couchbase_options[:password]
319
- ))
319
+ )),
320
320
  )
321
321
  end
322
322
 
Binary file
Binary file
Binary file
@@ -391,7 +391,7 @@ module Couchbase
391
391
  location.end_offset = loc[:end_offset]
392
392
  location.array_positions = loc[:array_positions]
393
393
  end
394
- end
394
+ end,
395
395
  )
396
396
  end
397
397
  row.instance_variable_set(:@fields, r[:fields])
@@ -626,7 +626,7 @@ module Couchbase
626
626
  core_scan_result: @backend.document_scan_create(
627
627
  @bucket_name, @scope_name, @name, scan_type.to_backend, options.to_backend
628
628
  ),
629
- transcoder: options.transcoder
629
+ transcoder: options.transcoder,
630
630
  )
631
631
  end
632
632
 
@@ -381,7 +381,7 @@ module Couchbase
381
381
  yield ScanResult.new(
382
382
  id: resp[:id],
383
383
  id_only: resp[:id_only],
384
- transcoder: @transcoder
384
+ transcoder: @transcoder,
385
385
  )
386
386
  else
387
387
  yield ScanResult.new(
@@ -391,7 +391,7 @@ module Couchbase
391
391
  expiry: resp[:expiry],
392
392
  encoded: resp[:encoded],
393
393
  flags: resp[:flags],
394
- transcoder: @transcoder
394
+ transcoder: @transcoder,
395
395
  )
396
396
  end
397
397
  end
@@ -1,6 +1,6 @@
1
1
  begin
2
2
  require_relative "#{RUBY_VERSION[/(\d+\.\d+)/]}/libcouchbase"
3
3
  rescue LoadError
4
- raise LoadError, "unable to load couchbase extension for Ruby #{RUBY_VERSION}. Only available for 3.1, 3.2, 3.3. " \
4
+ raise LoadError, "unable to load couchbase extension for Ruby #{RUBY_VERSION}. Only available for 3.1, 3.2, 3.3, 3.4. " \
5
5
  "Try to install couchbase from sources with 'gem install --platform ruby couchbase'"
6
6
  end
@@ -846,7 +846,7 @@ module Couchbase
846
846
  entry[:access_key_id],
847
847
  nil,
848
848
  entry[:region],
849
- service_endpoint: entry[:service_endpoint]
849
+ service_endpoint: entry[:service_endpoint],
850
850
  )
851
851
  when :couchbase
852
852
  CouchbaseRemoteAnalyticsLink.new(
@@ -857,8 +857,8 @@ module Couchbase
857
857
  encryption: EncryptionSettings.new(
858
858
  level: entry[:encryption_level],
859
859
  certificate: entry[:certificate],
860
- client_certificate: entry[:client_certificate]
861
- )
860
+ client_certificate: entry[:client_certificate],
861
+ ),
862
862
  )
863
863
  when :azureblob
864
864
  AzureBlobExternalAnalyticsLink.new(
@@ -866,7 +866,7 @@ module Couchbase
866
866
  entry[:dataverse],
867
867
  account_name: entry[:account_name],
868
868
  blob_endpoint: entry[:blob_endpoint],
869
- endpoint_suffix: entry[:endpoint_suffix]
869
+ endpoint_suffix: entry[:endpoint_suffix],
870
870
  )
871
871
  end
872
872
  end
@@ -206,7 +206,6 @@ module Couchbase
206
206
  def create_bucket(settings, options = Options::Bucket::CreateBucket.new)
207
207
  @backend.bucket_create(
208
208
  {
209
-
210
209
  name: settings.name,
211
210
  flush_enabled: settings.flush_enabled,
212
211
  ram_quota_mb: settings.ram_quota_mb,
@@ -222,6 +221,7 @@ module Couchbase
222
221
  history_retention_collection_default: settings.history_retention_collection_default,
223
222
  history_retention_duration: settings.history_retention_duration,
224
223
  history_retention_bytes: settings.history_retention_bytes,
224
+ num_vbuckets: settings.num_vbuckets,
225
225
  }, options.to_backend
226
226
  )
227
227
  end
@@ -252,6 +252,7 @@ module Couchbase
252
252
  history_retention_collection_default: settings.history_retention_collection_default,
253
253
  history_retention_bytes: settings.history_retention_bytes,
254
254
  history_retention_duration: settings.history_retention_duration,
255
+ num_vbuckets: settings.num_vbuckets,
255
256
  }, options.to_backend
256
257
  )
257
258
  end
@@ -342,9 +343,11 @@ module Couchbase
342
343
  bucket.minimum_durability_level = entry[:minimum_durability_level]
343
344
  bucket.compression_mode = entry[:compression_mode]
344
345
  bucket.instance_variable_set(:@healthy, entry[:nodes].all? { |node| node[:status] == "healthy" })
346
+ bucket.storage_backend = entry[:storage_backend]
345
347
  bucket.history_retention_collection_default = entry[:history_retention_collection_default]
346
348
  bucket.history_retention_bytes = entry[:history_retention_bytes]
347
349
  bucket.history_retention_duration = entry[:history_retention_duration]
350
+ bucket.num_vbuckets = entry[:num_vbuckets]
348
351
  end
349
352
  end
350
353
  end
@@ -405,7 +408,7 @@ module Couchbase
405
408
  # @return [nil, :none, :majority, :majority_and_persist_to_active, :persist_to_majority] the minimum durability level
406
409
  attr_accessor :minimum_durability_level
407
410
 
408
- # @return [Boolean, nil] whether to enable history retention on collections by default
411
+ # @return [Boolean, nil] whether to enable history retention on collections by default
409
412
  attr_accessor :history_retention_collection_default
410
413
 
411
414
  # @return [Integer, nil] the maximum size, in bytes, of the change history that is written to disk for all
@@ -416,6 +419,9 @@ module Couchbase
416
419
  # collections in this bucket
417
420
  attr_accessor :history_retention_duration
418
421
 
422
+ # @return [Integer, nil] the number of vBuckets the bucket should have. If not set, the server default will be used
423
+ attr_accessor :num_vbuckets
424
+
419
425
  # @api private
420
426
  # @return [Boolean] false if status of the bucket is not healthy
421
427
  def healthy?
@@ -95,7 +95,7 @@ module Couchbase
95
95
  username: username,
96
96
  password: password,
97
97
  timeouts: Protostellar::Timeouts.from_cluster_options(options),
98
- root_certificates: params.key?("trust_certificate") ? File.read(params["trust_certificate"]) : nil
98
+ root_certificates: params.key?("trust_certificate") ? File.read(params["trust_certificate"]) : nil,
99
99
  )
100
100
  new(connection_string.split("://")[1].split("?")[0], connect_options)
101
101
  end
@@ -160,7 +160,7 @@ module Couchbase
160
160
  credentials: options.grpc_credentials,
161
161
  channel_args: options.grpc_channel_args,
162
162
  call_metadata: options.grpc_call_metadata,
163
- timeouts: options.timeouts
163
+ timeouts: options.timeouts,
164
164
  )
165
165
 
166
166
  @query_request_generator = RequestGenerator::Query.new
@@ -49,7 +49,7 @@ module Couchbase
49
49
  client: @client,
50
50
  bucket_name: @bucket_name,
51
51
  scope_name: @scope_name,
52
- collection_name: @name
52
+ collection_name: @name,
53
53
  )
54
54
  end
55
55
 
@@ -29,7 +29,7 @@ module Couchbase
29
29
  @scope_name = scope_name
30
30
  @collection_name = collection_name
31
31
  @request_generator = RequestGenerator::Admin::Query.new(
32
- bucket_name: @bucket_name, scope_name: @scope_name, collection_name: @collection_name
32
+ bucket_name: @bucket_name, scope_name: @scope_name, collection_name: @collection_name,
33
33
  )
34
34
  end
35
35
 
@@ -62,21 +62,21 @@ module Couchbase
62
62
 
63
63
  def create_bucket_request(settings, options)
64
64
  proto_req = Generated::Admin::Bucket::V1::CreateBucketRequest.new(
65
- extract_bucket_settings(settings, create: true)
65
+ extract_bucket_settings(settings, create: true),
66
66
  )
67
67
  create_request(proto_req, :create_bucket, options)
68
68
  end
69
69
 
70
70
  def update_bucket_request(settings, options)
71
71
  proto_req = Generated::Admin::Bucket::V1::UpdateBucketRequest.new(
72
- extract_bucket_settings(settings, create: false)
72
+ extract_bucket_settings(settings, create: false),
73
73
  )
74
74
  create_request(proto_req, :update_bucket, options)
75
75
  end
76
76
 
77
77
  def delete_bucket_request(bucket_name, options)
78
78
  proto_req = Generated::Admin::Bucket::V1::DeleteBucketRequest.new(
79
- bucket_name: bucket_name
79
+ bucket_name: bucket_name,
80
80
  )
81
81
  create_request(proto_req, :delete_bucket, options)
82
82
  end
@@ -114,7 +114,7 @@ module Couchbase
114
114
  rpc: rpc,
115
115
  proto_request: proto_request,
116
116
  idempotent: idempotent,
117
- timeout: options.timeout
117
+ timeout: options.timeout,
118
118
  )
119
119
  end
120
120
  end
@@ -30,7 +30,7 @@ module Couchbase
30
30
 
31
31
  def list_collections_request(options)
32
32
  proto_req = Generated::Admin::Collection::V1::ListCollectionsRequest.new(
33
- bucket_name: @bucket_name
33
+ bucket_name: @bucket_name,
34
34
  )
35
35
  create_request(proto_req, :list_collections, options, idempotent: true)
36
36
  end
@@ -38,7 +38,7 @@ module Couchbase
38
38
  def create_scope_request(scope_name, options)
39
39
  proto_req = Generated::Admin::Collection::V1::CreateScopeRequest.new(
40
40
  bucket_name: @bucket_name,
41
- scope_name: scope_name
41
+ scope_name: scope_name,
42
42
  )
43
43
  create_request(proto_req, :create_scope, options)
44
44
  end
@@ -46,7 +46,7 @@ module Couchbase
46
46
  def delete_scope_request(scope_name, options)
47
47
  proto_req = Generated::Admin::Collection::V1::DeleteScopeRequest.new(
48
48
  bucket_name: @bucket_name,
49
- scope_name: scope_name
49
+ scope_name: scope_name,
50
50
  )
51
51
  create_request(proto_req, :delete_scope, options)
52
52
  end
@@ -62,7 +62,7 @@ module Couchbase
62
62
  bucket_name: @bucket_name,
63
63
  scope_name: scope_name,
64
64
  collection_name: collection_name,
65
- **proto_opts
65
+ **proto_opts,
66
66
  )
67
67
  create_request(proto_req, :create_collection, options)
68
68
  end
@@ -71,7 +71,7 @@ module Couchbase
71
71
  proto_req = Generated::Admin::Collection::V1::DeleteCollectionRequest.new(
72
72
  bucket_name: @bucket_name,
73
73
  scope_name: scope_name,
74
- collection_name: collection_name
74
+ collection_name: collection_name,
75
75
  )
76
76
  create_request(proto_req, :delete_collection, options)
77
77
  end
@@ -84,7 +84,7 @@ module Couchbase
84
84
  rpc: rpc,
85
85
  proto_request: proto_request,
86
86
  idempotent: idempotent,
87
- timeout: options.timeout
87
+ timeout: options.timeout,
88
88
  )
89
89
  end
90
90
  end
@@ -31,8 +31,8 @@ module Couchbase
31
31
  def get_all_indexes_request(options, bucket_name = nil)
32
32
  proto_req = Generated::Admin::Query::V1::GetAllIndexesRequest.new(
33
33
  **location(
34
- bucket_name: bucket_name, scope_name: options.scope_name, collection_name: options.collection_name
35
- )
34
+ bucket_name: bucket_name, scope_name: options.scope_name, collection_name: options.collection_name,
35
+ ),
36
36
  )
37
37
 
38
38
  create_request(proto_req, :get_all_indexes, options, idempotent: true)
@@ -47,9 +47,9 @@ module Couchbase
47
47
 
48
48
  proto_req = Generated::Admin::Query::V1::CreatePrimaryIndexRequest.new(
49
49
  **location(
50
- bucket_name: bucket_name, scope_name: options.scope_name, collection_name: options.collection_name
50
+ bucket_name: bucket_name, scope_name: options.scope_name, collection_name: options.collection_name,
51
51
  ),
52
- **proto_opts
52
+ **proto_opts,
53
53
  )
54
54
 
55
55
  create_request(proto_req, :create_primary_index, options)
@@ -63,11 +63,11 @@ module Couchbase
63
63
 
64
64
  proto_req = Generated::Admin::Query::V1::CreateIndexRequest.new(
65
65
  **location(
66
- bucket_name: bucket_name, scope_name: options.scope_name, collection_name: options.collection_name
66
+ bucket_name: bucket_name, scope_name: options.scope_name, collection_name: options.collection_name,
67
67
  ),
68
68
  name: index_name,
69
69
  fields: fields,
70
- **proto_opts
70
+ **proto_opts,
71
71
  )
72
72
 
73
73
  create_request(proto_req, :create_index, options)
@@ -76,8 +76,8 @@ module Couchbase
76
76
  def drop_primary_index_request(options, bucket_name = nil)
77
77
  proto_req = Generated::Admin::Query::V1::DropPrimaryIndexRequest.new(
78
78
  **location(
79
- bucket_name: bucket_name, scope_name: options.scope_name, collection_name: options.collection_name
80
- )
79
+ bucket_name: bucket_name, scope_name: options.scope_name, collection_name: options.collection_name,
80
+ ),
81
81
  )
82
82
 
83
83
  create_request(proto_req, :drop_primary_index, options)
@@ -86,9 +86,9 @@ module Couchbase
86
86
  def drop_index_request(index_name, options, bucket_name = nil)
87
87
  proto_req = Generated::Admin::Query::V1::DropIndexRequest.new(
88
88
  **location(
89
- bucket_name: bucket_name, scope_name: options.scope_name, collection_name: options.collection_name
89
+ bucket_name: bucket_name, scope_name: options.scope_name, collection_name: options.collection_name,
90
90
  ),
91
- name: index_name
91
+ name: index_name,
92
92
  )
93
93
 
94
94
  create_request(proto_req, :drop_index, options)
@@ -97,8 +97,8 @@ module Couchbase
97
97
  def build_deferred_indexes_request(options, bucket_name = nil)
98
98
  proto_req = Generated::Admin::Query::V1::BuildDeferredIndexesRequest.new(
99
99
  **location(
100
- bucket_name: bucket_name, scope_name: options.scope_name, collection_name: options.collection_name
101
- )
100
+ bucket_name: bucket_name, scope_name: options.scope_name, collection_name: options.collection_name,
101
+ ),
102
102
  )
103
103
 
104
104
  create_request(proto_req, :build_deferred_indexes, options)
@@ -120,7 +120,7 @@ module Couchbase
120
120
  rpc: rpc,
121
121
  proto_request: proto_request,
122
122
  idempotent: idempotent,
123
- timeout: options.timeout
123
+ timeout: options.timeout,
124
124
  )
125
125
  end
126
126
  end
@@ -86,7 +86,7 @@ module Couchbase
86
86
  proto_req = Generated::KV::V1::GetRequest.new(
87
87
  key: id,
88
88
  **location,
89
- **proto_opts
89
+ **proto_opts,
90
90
  )
91
91
 
92
92
  create_kv_request(proto_req, :get, options, idempotent: true)
@@ -100,7 +100,7 @@ module Couchbase
100
100
  proto_req = Generated::KV::V1::GetAndTouchRequest.new(
101
101
  **{expiry_type => expiry_value},
102
102
  **location,
103
- key: id
103
+ key: id,
104
104
  )
105
105
 
106
106
  create_kv_request(proto_req, :get_and_touch, options)
@@ -110,7 +110,7 @@ module Couchbase
110
110
  proto_req = Generated::KV::V1::GetAndLockRequest.new(
111
111
  **location,
112
112
  key: id,
113
- lock_time: lock_time.respond_to?(:in_seconds) ? lock_time.in_seconds : lock_time
113
+ lock_time: lock_time.respond_to?(:in_seconds) ? lock_time.in_seconds : lock_time,
114
114
  )
115
115
 
116
116
  create_kv_request(proto_req, :get_and_lock, options)
@@ -120,7 +120,7 @@ module Couchbase
120
120
  proto_req = Generated::KV::V1::UnlockRequest.new(
121
121
  **location,
122
122
  key: id,
123
- cas: cas
123
+ cas: cas,
124
124
  )
125
125
 
126
126
  create_kv_request(proto_req, :unlock, options)
@@ -134,7 +134,7 @@ module Couchbase
134
134
  proto_req = Generated::KV::V1::TouchRequest.new(
135
135
  **{expiry_type => expiry_value},
136
136
  **location,
137
- key: id
137
+ key: id,
138
138
  )
139
139
 
140
140
  create_kv_request(proto_req, :touch, options)
@@ -156,7 +156,7 @@ module Couchbase
156
156
  key: id,
157
157
  content_uncompressed: encoded,
158
158
  **location,
159
- **proto_opts
159
+ **proto_opts,
160
160
  )
161
161
 
162
162
  create_kv_request(proto_req, :upsert, options)
@@ -177,7 +177,7 @@ module Couchbase
177
177
  key: id,
178
178
  content_uncompressed: encoded,
179
179
  **location,
180
- **proto_opts
180
+ **proto_opts,
181
181
  )
182
182
 
183
183
  create_kv_request(proto_req, :insert, options)
@@ -202,7 +202,7 @@ module Couchbase
202
202
  key: id,
203
203
  content_uncompressed: encoded,
204
204
  **location,
205
- **proto_opts
205
+ **proto_opts,
206
206
  )
207
207
 
208
208
  create_kv_request(proto_req, :replace, options)
@@ -217,7 +217,7 @@ module Couchbase
217
217
  proto_req = Generated::KV::V1::RemoveRequest.new(
218
218
  key: id,
219
219
  **location,
220
- **proto_opts
220
+ **proto_opts,
221
221
  )
222
222
 
223
223
  create_kv_request(proto_req, :remove, options)
@@ -229,7 +229,7 @@ module Couchbase
229
229
  proto_req = Generated::KV::V1::ExistsRequest.new(
230
230
  key: id,
231
231
  **proto_opts,
232
- **location
232
+ **location,
233
233
  )
234
234
 
235
235
  create_kv_request(proto_req, :exists, options)
@@ -256,7 +256,7 @@ module Couchbase
256
256
  key: id,
257
257
  **location,
258
258
  specs: specs.map { |s| get_mutate_in_spec(s) },
259
- **proto_opts
259
+ **proto_opts,
260
260
  )
261
261
 
262
262
  create_kv_request(proto_req, :mutate_in, options)
@@ -271,7 +271,7 @@ module Couchbase
271
271
  key: id,
272
272
  **location,
273
273
  specs: specs.map { |s| get_lookup_in_spec(s) },
274
- **proto_opts
274
+ **proto_opts,
275
275
  )
276
276
 
277
277
  create_kv_request(proto_req, :lookup_in, options, idempotent: true)
@@ -288,7 +288,7 @@ module Couchbase
288
288
  proto_req = Generated::KV::V1::IncrementRequest.new(
289
289
  key: id,
290
290
  **location,
291
- **proto_opts
291
+ **proto_opts,
292
292
  )
293
293
 
294
294
  create_kv_request(proto_req, :increment, options)
@@ -305,7 +305,7 @@ module Couchbase
305
305
  proto_req = Generated::KV::V1::DecrementRequest.new(
306
306
  key: id,
307
307
  **location,
308
- **proto_opts
308
+ **proto_opts,
309
309
  )
310
310
 
311
311
  create_kv_request(proto_req, :decrement, options)
@@ -320,7 +320,7 @@ module Couchbase
320
320
  key: id,
321
321
  content: content,
322
322
  **location,
323
- **proto_opts
323
+ **proto_opts,
324
324
  )
325
325
 
326
326
  create_kv_request(proto_req, :append, options)
@@ -335,7 +335,7 @@ module Couchbase
335
335
  key: id,
336
336
  content: content,
337
337
  **location,
338
- **proto_opts
338
+ **proto_opts,
339
339
  )
340
340
 
341
341
  create_kv_request(proto_req, :prepend, options)
@@ -344,7 +344,7 @@ module Couchbase
344
344
  def get_all_replicas_request(id, options)
345
345
  proto_req = Generated::KV::V1::GetAllReplicasRequest.new(
346
346
  key: id,
347
- **location
347
+ **location,
348
348
  )
349
349
 
350
350
  create_kv_request(proto_req, :get_all_replicas, options, idempotent: true)
@@ -363,7 +363,7 @@ module Couchbase
363
363
  rpc: rpc,
364
364
  proto_request: proto_request,
365
365
  timeout: options.timeout,
366
- idempotent: idempotent
366
+ idempotent: idempotent,
367
367
  )
368
368
  end
369
369
 
@@ -385,7 +385,7 @@ module Couchbase
385
385
  [:expiry_secs, time_or_duration]
386
386
  when :time_point
387
387
  timestamp = Google::Protobuf::Timestamp.new(
388
- seconds: time_or_duration
388
+ seconds: time_or_duration,
389
389
  )
390
390
  [:expiry_time, timestamp]
391
391
  else
@@ -405,7 +405,7 @@ module Couchbase
405
405
  Generated::KV::V1::LookupInRequest::Spec.new(
406
406
  operation: get_lookup_in_operation(lookup_in_spec),
407
407
  path: lookup_in_spec.path,
408
- flags: get_lookup_in_spec_flags(lookup_in_spec)
408
+ flags: get_lookup_in_spec_flags(lookup_in_spec),
409
409
  )
410
410
  end
411
411
 
@@ -415,13 +415,13 @@ module Couchbase
415
415
 
416
416
  def get_lookup_in_spec_flags(lookup_in_spec)
417
417
  Generated::KV::V1::LookupInRequest::Spec::Flags.new(
418
- xattr: lookup_in_spec.xattr?
418
+ xattr: lookup_in_spec.xattr?,
419
419
  )
420
420
  end
421
421
 
422
422
  def get_lookup_in_flags(options)
423
423
  Generated::KV::V1::LookupInRequest::Flags.new(
424
- access_deleted: options.access_deleted
424
+ access_deleted: options.access_deleted,
425
425
  )
426
426
  end
427
427
 
@@ -434,7 +434,7 @@ module Couchbase
434
434
  operation: get_mutate_in_operation(mutate_in_spec),
435
435
  path: mutate_in_spec.path,
436
436
  content: mutate_in_spec.param.to_s,
437
- flags: get_mutate_in_spec_flags(mutate_in_spec)
437
+ flags: get_mutate_in_spec_flags(mutate_in_spec),
438
438
  )
439
439
  end
440
440
 
@@ -445,13 +445,13 @@ module Couchbase
445
445
  def get_mutate_in_spec_flags(mutate_in_spec)
446
446
  Generated::KV::V1::MutateInRequest::Spec::Flags.new(
447
447
  create_path: mutate_in_spec.create_path?,
448
- xattr: mutate_in_spec.xattr?
448
+ xattr: mutate_in_spec.xattr?,
449
449
  )
450
450
  end
451
451
 
452
452
  def get_mutate_in_flags(options)
453
453
  Generated::KV::V1::MutateInRequest::Flags.new(
454
- access_deleted: options.access_deleted
454
+ access_deleted: options.access_deleted,
455
455
  )
456
456
  end
457
457
 
@@ -78,7 +78,7 @@ module Couchbase
78
78
 
79
79
  proto_req = Generated::Query::V1::QueryRequest.new(
80
80
  statement: statement,
81
- **proto_opts
81
+ **proto_opts,
82
82
  )
83
83
 
84
84
  create_query_request(proto_req, :query, options, idempotent: options.readonly)
@@ -92,7 +92,7 @@ module Couchbase
92
92
  rpc: rpc,
93
93
  proto_request: proto_request,
94
94
  timeout: options.timeout,
95
- idempotent: idempotent
95
+ idempotent: idempotent,
96
96
  )
97
97
  end
98
98
 
@@ -105,7 +105,7 @@ module Couchbase
105
105
  duration_millis = Utils::Time.extract_duration(options.scan_wait)
106
106
  tuning_opts[:scan_wait] = Google::Protobuf::Duration.new(
107
107
  seconds: duration_millis / 1000,
108
- nanos: (duration_millis % 1000) * (10**6)
108
+ nanos: (duration_millis % 1000) * (10**6),
109
109
  )
110
110
  end
111
111
  tuning_opts[:scan_cap] = options.scan_cap unless options.scan_cap.nil?
@@ -123,7 +123,7 @@ module Couchbase
123
123
  bucket_name: t.bucket_name,
124
124
  vbucket_id: t.partition_id,
125
125
  vbucket_uuid: t.partition_uuid,
126
- seq_no: t.sequence_number
126
+ seq_no: t.sequence_number,
127
127
  )
128
128
  end
129
129
  end
@@ -62,7 +62,7 @@ module Couchbase
62
62
  proto_req = Generated::Search::V1::SearchQueryRequest.new(
63
63
  query: create_query(query),
64
64
  index_name: index_name,
65
- **proto_opts
65
+ **proto_opts,
66
66
  )
67
67
 
68
68
  # Set the search facets in the request
@@ -81,7 +81,7 @@ module Couchbase
81
81
  rpc: rpc,
82
82
  proto_request: proto_request,
83
83
  timeout: options.timeout,
84
- idempotent: idempotent
84
+ idempotent: idempotent,
85
85
  )
86
86
  end
87
87
 
@@ -188,11 +188,11 @@ module Couchbase
188
188
  query_attrs = query.to_h
189
189
  query_attrs[:top_left] = Generated::Search::V1::LatLng.new(
190
190
  longitude: query_attrs[:top_left][0],
191
- latitude: query_attrs[:top_left][1]
191
+ latitude: query_attrs[:top_left][1],
192
192
  )
193
193
  query_attrs[:bottom_right] = Generated::Search::V1::LatLng.new(
194
194
  longitude: query_attrs[:bottom_right][0],
195
- latitude: query_attrs[:bottom_right][1]
195
+ latitude: query_attrs[:bottom_right][1],
196
196
  )
197
197
  Generated::Search::V1::GeoBoundingBoxQuery.new(query_attrs)
198
198
  end
@@ -202,7 +202,7 @@ module Couchbase
202
202
  longitude, latitude = query_attrs.delete(:location)
203
203
  query_attrs[:center] = Generated::Search::V1::LatLng.new(
204
204
  longitude: longitude,
205
- latitude: latitude
205
+ latitude: latitude,
206
206
  )
207
207
  Generated::Search::V1::GeoDistanceQuery.new(query_attrs)
208
208
  end
@@ -213,7 +213,7 @@ module Couchbase
213
213
  query_attrs[:vertices] = polygon_points.map do |lon, lat|
214
214
  Generated::Search::V1::LatLng.new(
215
215
  longitude: lon,
216
- latitude: lat
216
+ latitude: lat,
217
217
  )
218
218
  end
219
219
  Generated::Search::V1::GeoPolygonQuery.new(query_attrs)
@@ -288,20 +288,20 @@ module Couchbase
288
288
  descending: s.desc,
289
289
  missing: s.missing.to_s,
290
290
  mode: s.mode.to_s,
291
- type: s.type.to_s
292
- )
291
+ type: s.type.to_s,
292
+ ),
293
293
  )
294
294
  when Couchbase::Cluster::SearchSort::SearchSortId
295
295
  Generated::Search::V1::Sorting.new(
296
296
  id_sorting: Generated::Search::V1::IdSorting.new(
297
- descending: s.desc
298
- )
297
+ descending: s.desc,
298
+ ),
299
299
  )
300
300
  when Couchbase::Cluster::SearchSort::SearchSortScore
301
301
  Generated::Search::V1::Sorting.new(
302
302
  score_sorting: Generated::Search::V1::ScoreSorting.new(
303
- descending: s.desc
304
- )
303
+ descending: s.desc,
304
+ ),
305
305
  )
306
306
  when Couchbase::Cluster::SearchSort::SearchSortGeoDistance
307
307
  Generated::Search::V1::Sorting.new(
@@ -310,10 +310,10 @@ module Couchbase
310
310
  descending: s.desc,
311
311
  center: Generated::Search::V1::LatLng.new(
312
312
  latitude: s.latitude,
313
- longitude: s.longitude
313
+ longitude: s.longitude,
314
314
  ),
315
- unit: s.unit.to_s
316
- )
315
+ unit: s.unit.to_s,
316
+ ),
317
317
  )
318
318
  when String
319
319
  if s[0] == "-"
@@ -326,16 +326,16 @@ module Couchbase
326
326
  if field == "_score"
327
327
  Generated::Search::V1::Sorting.new(
328
328
  score_sorting: Generated::Search::V1::ScoreSorting.new(
329
- descending: desc
330
- )
329
+ descending: desc,
330
+ ),
331
331
  )
332
332
  else
333
333
  Generated::Search::V1::Sorting.new(
334
334
  # TODO: What to do with the rest of the FieldSorting attributes?
335
335
  core_sorting: Generated::Search::V1::FieldSorting.new(
336
336
  field: field,
337
- descending: desc
338
- )
337
+ descending: desc,
338
+ ),
339
339
  )
340
340
  end
341
341
  else
@@ -353,8 +353,8 @@ module Couchbase
353
353
  Generated::Search::V1::Facet.new(
354
354
  term_facet: Generated::Search::V1::TermFacet.new(
355
355
  field: facet.field,
356
- size: facet.size
357
- )
356
+ size: facet.size,
357
+ ),
358
358
  )
359
359
  when Couchbase::Cluster::SearchFacet::SearchFacetNumericRange
360
360
  Generated::Search::V1::Facet.new(
@@ -363,8 +363,8 @@ module Couchbase
363
363
  size: facet.size,
364
364
  numeric_ranges: facet.instance_variable_get(:@ranges).map do |r|
365
365
  Generated::Search::V1::NumericRange(name: r[:name], min: r[:min], max: r[:max])
366
- end
367
- )
366
+ end,
367
+ ),
368
368
  )
369
369
  when Couchbase::Cluster::SearchFacet::SearchFacetDateRange
370
370
  Generated::Search::V1::Facet.new(
@@ -373,8 +373,8 @@ module Couchbase
373
373
  size: facet.size,
374
374
  date_ranges: facet.instance_variable_get(:@ranges).map do |r|
375
375
  Generated::Search::V1::DateRange(name: r[:name], start: r[:start], end: r[:end])
376
- end
377
- )
376
+ end,
377
+ ),
378
378
  )
379
379
  else
380
380
  raise Couchbase::Error::CouchbaseError, "Unrecognised search facet type"
@@ -45,7 +45,7 @@ module Couchbase
45
45
  r.score = proto_row.score.to_f
46
46
  unless proto_row.locations.empty?
47
47
  r.locations = Couchbase::Cluster::SearchRowLocations.new(
48
- proto_row.locations.map { |loc| convert_search_row_location(loc) }
48
+ proto_row.locations.map { |loc| convert_search_row_location(loc) },
49
49
  )
50
50
  end
51
51
  r.fragments = convert_fragments(proto_row.fragments)
@@ -27,7 +27,7 @@ module Couchbase
27
27
  name,
28
28
  new(name: name,
29
29
  allows_non_idempotent_retry: allows_non_idempotent_retry,
30
- always_retry: always_retry).freeze
30
+ always_retry: always_retry).freeze,
31
31
  )
32
32
  end
33
33
 
@@ -75,7 +75,7 @@ module Couchbase
75
75
  query_timeout: options.query_timeout,
76
76
  analytics_timeout: options.analytics_timeout,
77
77
  search_timeout: options.search_timeout,
78
- management_timeout: options.management_timeout
78
+ management_timeout: options.management_timeout,
79
79
  )
80
80
  end
81
81
  end
@@ -198,7 +198,7 @@ module Couchbase
198
198
  location.end_offset = loc[:end_offset]
199
199
  location.array_positions = loc[:array_positions]
200
200
  end
201
- end
201
+ end,
202
202
  )
203
203
  end
204
204
  row.instance_variable_set(:@fields, r[:fields])
@@ -52,7 +52,7 @@ module Couchbase
52
52
  TranscoderFlags.new(
53
53
  format: INV_FORMAT_MAP[format_bits],
54
54
  compression: INV_COMPRESSION_MAP[compression_bits],
55
- lower_bits: lower_bits
55
+ lower_bits: lower_bits,
56
56
  )
57
57
  end
58
58
 
@@ -39,7 +39,7 @@ module Couchbase
39
39
  payload += " at #{filename}:#{line} #{function}" if @verbose && filename
40
40
  logdev.write(
41
41
  @logger.send(:format_message, @logger.send(:format_severity, severity), ::Time.at(seconds, nanoseconds, :nanosecond), progname,
42
- payload)
42
+ payload),
43
43
  )
44
44
  end
45
45
 
@@ -21,5 +21,5 @@ module Couchbase
21
21
  # $ ruby -rcouchbase -e 'pp Couchbase::VERSION'
22
22
  # {:sdk=>"3.4.0", :ruby_abi=>"3.1.0", :revision=>"416fe68e6029ec8a4c40611cf6e6b30d3b90d20f"}
23
23
  VERSION = {} unless defined?(VERSION) # rubocop:disable Style/MutableConstant
24
- VERSION.update(:sdk => "3.5.6")
24
+ VERSION.update(:sdk => "3.6.0")
25
25
  end
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: couchbase
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.5.6
4
+ version: 3.6.0
5
5
  platform: x86_64-darwin
6
6
  authors:
7
7
  - Sergey Avseyev
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2025-03-18 00:00:00.000000000 Z
10
+ date: 2025-06-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: grpc
@@ -39,6 +38,7 @@ files:
39
38
  - lib/couchbase/3.1/libcouchbase.bundle
40
39
  - lib/couchbase/3.2/libcouchbase.bundle
41
40
  - lib/couchbase/3.3/libcouchbase.bundle
41
+ - lib/couchbase/3.4/libcouchbase.bundle
42
42
  - lib/couchbase/analytics_options.rb
43
43
  - lib/couchbase/authenticator.rb
44
44
  - lib/couchbase/binary_collection.rb
@@ -163,12 +163,11 @@ metadata:
163
163
  homepage_uri: https://docs.couchbase.com/ruby-sdk/current/hello-world/start-using-sdk.html
164
164
  bug_tracker_uri: https://jira.issues.couchbase.com/browse/RCBC
165
165
  mailing_list_uri: https://www.couchbase.com/forums/c/ruby-sdk
166
- source_code_uri: https://github.com/couchbase/couchbase-ruby-client/tree/3.5.6
167
- changelog_uri: https://github.com/couchbase/couchbase-ruby-client/releases/tag/3.5.6
168
- documentation_uri: https://docs.couchbase.com/sdk-api/couchbase-ruby-client-3.5.6/index.html
166
+ source_code_uri: https://github.com/couchbase/couchbase-ruby-client/tree/3.6.0
167
+ changelog_uri: https://github.com/couchbase/couchbase-ruby-client/releases/tag/3.6.0
168
+ documentation_uri: https://docs.couchbase.com/sdk-api/couchbase-ruby-client-3.6.0/index.html
169
169
  github_repo: https://github.com/couchbase/couchbase-ruby-client
170
170
  rubygems_mfa_required: 'true'
171
- post_install_message:
172
171
  rdoc_options:
173
172
  - "--exclude"
174
173
  - ext/
@@ -186,7 +185,6 @@ required_rubygems_version: !ruby/object:Gem::Requirement
186
185
  version: '0'
187
186
  requirements: []
188
187
  rubygems_version: 3.3.27
189
- signing_key:
190
188
  specification_version: 4
191
189
  summary: SDK for Couchbase Server
192
190
  test_files: []