couchbase 3.0.0.alpha.3-universal-darwin-19 → 3.0.0.alpha.4-universal-darwin-19

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 (61) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/tests-6.0.3.yml +4 -1
  3. data/.github/workflows/tests-dev-preview.yml +4 -1
  4. data/.github/workflows/tests.yml +4 -1
  5. data/README.md +1 -1
  6. data/bin/check-cluster +31 -0
  7. data/bin/init-cluster +16 -4
  8. data/examples/analytics.rb +221 -0
  9. data/examples/managing_analytics_indexes.rb +72 -0
  10. data/examples/managing_view_indexes.rb +54 -0
  11. data/examples/search_with_consistency.rb +84 -0
  12. data/examples/view.rb +50 -0
  13. data/ext/.clang-tidy +1 -0
  14. data/ext/build_version.hxx.in +1 -1
  15. data/ext/couchbase/bucket.hxx +0 -1
  16. data/ext/couchbase/couchbase.cxx +1421 -55
  17. data/ext/couchbase/io/dns_client.hxx +215 -0
  18. data/ext/couchbase/io/dns_codec.hxx +207 -0
  19. data/ext/couchbase/io/dns_config.hxx +116 -0
  20. data/ext/couchbase/io/dns_message.hxx +558 -0
  21. data/ext/couchbase/io/http_session.hxx +16 -4
  22. data/ext/couchbase/io/mcbp_session.hxx +2 -1
  23. data/ext/couchbase/mutation_token.hxx +1 -1
  24. data/ext/couchbase/operations.hxx +19 -0
  25. data/ext/couchbase/operations/analytics_dataset_create.hxx +117 -0
  26. data/ext/couchbase/operations/analytics_dataset_drop.hxx +103 -0
  27. data/ext/couchbase/operations/analytics_dataset_get_all.hxx +107 -0
  28. data/ext/couchbase/operations/analytics_dataverse_create.hxx +104 -0
  29. data/ext/couchbase/operations/analytics_dataverse_drop.hxx +104 -0
  30. data/ext/couchbase/operations/analytics_get_pending_mutations.hxx +91 -0
  31. data/ext/couchbase/operations/analytics_index_create.hxx +128 -0
  32. data/ext/couchbase/operations/analytics_index_drop.hxx +110 -0
  33. data/ext/couchbase/operations/analytics_index_get_all.hxx +106 -0
  34. data/ext/couchbase/operations/analytics_link_connect.hxx +102 -0
  35. data/ext/couchbase/operations/analytics_link_disconnect.hxx +101 -0
  36. data/ext/couchbase/operations/design_document.hxx +59 -0
  37. data/ext/couchbase/operations/document_analytics.hxx +293 -0
  38. data/ext/couchbase/operations/document_query.hxx +2 -2
  39. data/ext/couchbase/operations/document_search.hxx +19 -1
  40. data/ext/couchbase/operations/document_view.hxx +227 -0
  41. data/ext/couchbase/operations/search_index.hxx +17 -0
  42. data/ext/couchbase/operations/search_index_control_ingest.hxx +3 -1
  43. data/ext/couchbase/operations/view_index_drop.hxx +67 -0
  44. data/ext/couchbase/operations/view_index_get.hxx +90 -0
  45. data/ext/couchbase/operations/view_index_get_all.hxx +125 -0
  46. data/ext/couchbase/operations/view_index_upsert.hxx +87 -0
  47. data/ext/couchbase/service_type.hxx +38 -1
  48. data/ext/couchbase/timeout_defaults.hxx +3 -1
  49. data/ext/couchbase/utils/connection_string.hxx +231 -0
  50. data/ext/couchbase/version.hxx +1 -1
  51. data/ext/test/main.cxx +3 -12
  52. data/lib/couchbase/analytics_options.rb +165 -0
  53. data/lib/couchbase/bucket.rb +49 -0
  54. data/lib/couchbase/cluster.rb +46 -207
  55. data/lib/couchbase/management/analytics_index_manager.rb +138 -24
  56. data/lib/couchbase/management/view_index_manager.rb +63 -10
  57. data/lib/couchbase/query_options.rb +219 -0
  58. data/lib/couchbase/search_options.rb +6 -6
  59. data/lib/couchbase/version.rb +1 -1
  60. data/lib/couchbase/view_options.rb +155 -0
  61. metadata +34 -2
@@ -0,0 +1,219 @@
1
+ # Copyright 2020 Couchbase, Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'json'
16
+
17
+ module Couchbase
18
+ class Cluster
19
+
20
+ class QueryOptions
21
+ # @return [Integer] Timeout in milliseconds
22
+ attr_accessor :timeout
23
+
24
+ # @return [Boolean] Allows turning this request into a prepared statement query
25
+ attr_accessor :adhoc
26
+
27
+ # @return [String] Provides a custom client context ID for this query
28
+ attr_accessor :client_context_id
29
+
30
+ # @return [Integer] Allows overriding the default maximum parallelism for the query execution on the server side.
31
+ attr_accessor :max_parallelism
32
+
33
+ # @return [Boolean] Allows explicitly marking a query as being readonly and not mutating and documents on the server side.
34
+ attr_accessor :readonly
35
+
36
+ # Allows customizing how long (in milliseconds) the query engine is willing to wait until the index catches up to whatever scan consistency is asked for in this query.
37
+ #
38
+ # @note that if +:not_bounded+ consistency level is used, this method doesn't do anything
39
+ # at all. If no value is provided to this method, the server default is used.
40
+ #
41
+ # @return [Integer] The maximum duration (in milliseconds) the query engine is willing to wait before failing.
42
+ attr_accessor :scan_wait
43
+
44
+ # @return [Integer] Supports customizing the maximum buffered channel size between the indexer and the query service
45
+ attr_accessor :scan_cap
46
+
47
+ # @return [Integer] Supports customizing the number of items execution operators can batch for fetch from the KV layer on the server.
48
+ attr_accessor :pipeline_batch
49
+
50
+ # @return [Integer] Allows customizing the maximum number of items each execution operator can buffer between various operators on the server.
51
+ attr_accessor :pipeline_cap
52
+
53
+ # @return [Boolean] Enables per-request metrics in the trailing section of the query
54
+ attr_accessor :metrics
55
+
56
+ # @return [:off, :phases, :timings] Customize server profile level for this query
57
+ attr_accessor :profile
58
+
59
+ # @yieldparam [QueryOptions] self
60
+ def initialize
61
+ @timeout = 75_000 # ms
62
+ @adhoc = true
63
+ @raw_parameters = {}
64
+ @positional_parameters = nil
65
+ @named_parameters = nil
66
+ @scan_consistency = nil
67
+ @mutation_state = nil
68
+ yield self if block_given?
69
+ end
70
+
71
+ # Allows providing custom JSON key/value pairs for advanced usage
72
+ #
73
+ # @param [String] key the parameter name (key of the JSON property)
74
+ # @param [Object] value the parameter value (value of the JSON property)
75
+ def raw(key, value)
76
+ @raw_parameters[key] = JSON.generate(value)
77
+ end
78
+
79
+ # Customizes the consistency guarantees for this query
80
+ #
81
+ # @note overrides consistency level set by {#consistent_with}
82
+ #
83
+ # [+:not_bounded+] The indexer will return whatever state it has to the query engine at the time of query. This is the default (for single-statement requests).
84
+ #
85
+ # [+:request_plus+] The indexer will wait until all mutations have been processed at the time of request before returning to the query engine.
86
+ #
87
+ # @param [:not_bounded, :request_plus] level the index scan consistency to be used for this query
88
+ def scan_consistency=(level)
89
+ @mutation_state = nil if @mutation_state
90
+ @scan_consistency = level
91
+ end
92
+
93
+ # Sets the mutation tokens this query should be consistent with
94
+ #
95
+ # @note overrides consistency level set by {#scan_consistency=}
96
+ #
97
+ # @param [MutationState] mutation_state the mutation state containing the mutation tokens
98
+ def consistent_with(mutation_state)
99
+ @scan_consistency = nil if @scan_consistency
100
+ @mutation_state = mutation_state
101
+ end
102
+
103
+ # Sets positional parameters for the query
104
+ #
105
+ # @param [Array] positional the list of parameters that have to be substituted in the statement
106
+ def positional_parameters(positional)
107
+ @positional_parameters = positional
108
+ @named_parameters = nil
109
+ end
110
+
111
+ # Sets named parameters for the query
112
+ #
113
+ # @param [Hash] named the key/value map of the parameters to substitute in the statement
114
+ def named_parameters(named)
115
+ @named_parameters = named
116
+ @positional_parameters = nil
117
+ end
118
+ end
119
+
120
+ class QueryResult
121
+ # @return [QueryMetaData] returns object representing additional metadata associated with this query
122
+ attr_accessor :meta_data
123
+
124
+ attr_accessor :transcoder
125
+
126
+ # Returns all rows converted using a transcoder
127
+ #
128
+ # @return [Array]
129
+ def rows(transcoder = self.transcoder)
130
+ @rows.lazy.map do |row|
131
+ if transcoder == :json
132
+ JSON.parse(row)
133
+ else
134
+ transcoder.call(row)
135
+ end
136
+ end
137
+ end
138
+
139
+ # @yieldparam [QueryResult] self
140
+ def initialize
141
+ yield self if block_given?
142
+ @transcoder = :json
143
+ end
144
+ end
145
+
146
+ class QueryMetaData
147
+ # @return [String] returns the request identifier string of the query request
148
+ attr_accessor :request_id
149
+
150
+ # @return [String] returns the client context identifier string set of the query request
151
+ attr_accessor :client_context_id
152
+
153
+ # @return [Symbol] returns raw query execution status as returned by the query engine
154
+ attr_accessor :status
155
+
156
+ # @return [Hash] returns the signature as returned by the query engine which is then decoded as JSON object
157
+ attr_accessor :signature
158
+
159
+ # @return [Hash] returns the profiling information returned by the query engine which is then decoded as JSON object
160
+ attr_accessor :profile
161
+
162
+ # @return [QueryMetrics] metrics as returned by the query engine, if enabled
163
+ attr_accessor :metrics
164
+
165
+ # @return [List<QueryWarning>] list of warnings returned by the query engine
166
+ attr_accessor :warnings
167
+
168
+ # @yieldparam [QueryMetaData] self
169
+ def initialize
170
+ yield self if block_given?
171
+ end
172
+ end
173
+
174
+ class QueryMetrics
175
+ # @return [Integer] The total time taken for the request, that is the time from when the request was received until the results were returned
176
+ attr_accessor :elapsed_time
177
+
178
+ # @return [Integer] The time taken for the execution of the request, that is the time from when query execution started until the results were returned
179
+ attr_accessor :execution_time
180
+
181
+ # @return [Integer] the total number of results selected by the engine before restriction through LIMIT clause.
182
+ attr_accessor :sort_count
183
+
184
+ # @return [Integer] The total number of objects in the results.
185
+ attr_accessor :result_count
186
+
187
+ # @return [Integer] The total number of bytes in the results.
188
+ attr_accessor :result_size
189
+
190
+ # @return [Integer] The number of mutations that were made during the request.
191
+ attr_accessor :mutation_count
192
+
193
+ # @return [Integer] The number of errors that occurred during the request.
194
+ attr_accessor :error_count
195
+
196
+ # @return [Integer] The number of warnings that occurred during the request.
197
+ attr_accessor :warning_count
198
+
199
+ # @yieldparam [QueryMetrics] self
200
+ def initialize
201
+ yield self if block_given?
202
+ end
203
+ end
204
+
205
+ # Represents a single warning returned from the query engine.
206
+ class QueryWarning
207
+ # @return [Integer]
208
+ attr_accessor :code
209
+
210
+ # @return [String]
211
+ attr_accessor :message
212
+
213
+ def initialize(code, message)
214
+ @code = code
215
+ @message = message
216
+ end
217
+ end
218
+ end
219
+ end
@@ -304,7 +304,7 @@ module Couchbase
304
304
  #
305
305
  # @note The lower boundary is considered inclusive by default on the server side.
306
306
  #
307
- # @param [Time, String] time_point start time. When {Time} object is passed {#date_time_parser} must be +nil+ (to use server default)
307
+ # @param [Time, String] time_point start time. When +Time+ object is passed {#date_time_parser} must be +nil+ (to use server default)
308
308
  # @param [Boolean] inclusive
309
309
  def start_time(time_point, inclusive = nil)
310
310
  @start_time = time_point
@@ -315,7 +315,7 @@ module Couchbase
315
315
  #
316
316
  # @note The upper boundary is considered exclusive by default on the server side.
317
317
  #
318
- # @param [Time, String] time_point end time. When {Time} object is passed {#date_time_parser} must be +nil+ (to use server default)
318
+ # @param [Time, String] time_point end time. When +Time+ object is passed {#date_time_parser} must be +nil+ (to use server default)
319
319
  # @param [Boolean] inclusive
320
320
  def end_time(time_point, inclusive = nil)
321
321
  @end_time = time_point
@@ -1203,7 +1203,7 @@ module Couchbase
1203
1203
 
1204
1204
  # Facets allow to aggregate information collected on a particular result set
1205
1205
  #
1206
- # @return [Hash<String, SearchFacet]
1206
+ # @return [Hash<String => SearchFacet>]
1207
1207
  attr_accessor :facets
1208
1208
 
1209
1209
  # @return [JsonTranscoder] transcoder to use for the results
@@ -1420,7 +1420,7 @@ module Couchbase
1420
1420
  # @return [Hash]
1421
1421
  attr_accessor :explanation
1422
1422
 
1423
- # @return [Hash<String, Array<String>>]
1423
+ # @return [Hash<String => Array<String>>]
1424
1424
  attr_accessor :fragments
1425
1425
 
1426
1426
  # @return [JsonTranscoder] transcoder to use for the fields
@@ -1463,7 +1463,7 @@ module Couchbase
1463
1463
  # @return [SearchMetrics]
1464
1464
  attr_accessor :metrics
1465
1465
 
1466
- # @return [Hash<String, String>]
1466
+ # @return [Hash<String => String>]
1467
1467
  attr_accessor :errors
1468
1468
 
1469
1469
  # @yieldparam [SearchMetaData] self
@@ -1477,7 +1477,7 @@ module Couchbase
1477
1477
  # @return [Array<SearchRow>]
1478
1478
  attr_accessor :rows
1479
1479
 
1480
- # @return [Hash<String, SearchFacetResult>]
1480
+ # @return [Hash<String => SearchFacetResult>]
1481
1481
  attr_accessor :facets
1482
1482
 
1483
1483
  # @return [SearchMetaData]
@@ -14,5 +14,5 @@
14
14
 
15
15
  module Couchbase
16
16
  VERSION = {} unless defined?(VERSION)
17
- VERSION.update(:sdk => "3.0.0.alpha.3".freeze)
17
+ VERSION.update(:sdk => "3.0.0.alpha.4".freeze)
18
18
  end
@@ -0,0 +1,155 @@
1
+ # Copyright 2020 Couchbase, Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'json'
16
+
17
+ module Couchbase
18
+ class Bucket
19
+
20
+ class ViewOptions
21
+ # @return [Integer] Timeout in milliseconds
22
+ attr_accessor :timeout
23
+
24
+ # Specifies the level of consistency for the query
25
+ # @return [:not_bounded, :request_plus, :update_after]
26
+ attr_accessor :scan_consistency
27
+
28
+ # Specifies the number of results to skip from the start of the result set
29
+ # @return [Integer]
30
+ attr_accessor :skip
31
+
32
+ # Specifies the maximum number of results to return
33
+ # @return [Integer]
34
+ attr_accessor :limit
35
+
36
+ # Specifies the key, to which the engine has to skip before result generation
37
+ attr_accessor :start_key
38
+
39
+ # Specifies the key, at which the result generation has to be stopped
40
+ # @return [#to_json]
41
+ attr_accessor :end_key
42
+
43
+ # Specifies the document id in case {#start_key} gives multiple results within the index
44
+ # @return [String]
45
+ attr_accessor :start_key_doc_id
46
+
47
+ # Specifies the document id in case {#end_key} gives multiple results within the index
48
+ # @return [String]
49
+ attr_accessor :end_key_doc_id
50
+
51
+ # Specifies whether the {#end_key}/#{#end_key_doc_id} values should be inclusive
52
+ # @return [Boolean]
53
+ attr_accessor :inclusive_end
54
+
55
+ # Specifies whether to enable grouping of the results
56
+ #
57
+ # @return [Boolean]
58
+ attr_accessor :group
59
+
60
+ # Specifies the depth within the key to group the results
61
+ #
62
+ # @return [Integer]
63
+ attr_accessor :group_level
64
+
65
+ # Specifies the set of the keys to fetch from the index
66
+ # @return [#to_json]
67
+ attr_accessor :key
68
+
69
+ # Specifies set of the keys to fetch from the index
70
+ #
71
+ # @return [Array<#to_json>]
72
+ attr_accessor :keys
73
+
74
+ # Specifies the order of the results that should be returned
75
+ #
76
+ # @return [:ascending, :descending]
77
+ attr_accessor :order
78
+
79
+ # Specifies whether to enable the reduction function associated with this particular view index
80
+ # @return [Boolean]
81
+ attr_accessor :reduce
82
+
83
+ # Specifies the behaviour of the view engine should an error occur during the gathering of view index results
84
+ # which would result in only partial results being available
85
+ #
86
+ # @return [:stop, :continue]
87
+ attr_accessor :on_error
88
+
89
+ # @return [Boolean] allows to return debug information as part of the view response
90
+ attr_accessor :debug
91
+
92
+ # @return [:production, :development]
93
+ attr_accessor :namespace
94
+
95
+ # @yieldparam [ViewQueryOptions] self
96
+ def initialize
97
+ @namespace = :production
98
+ yield self if block_given?
99
+ end
100
+
101
+ # Allows providing custom JSON key/value pairs for advanced usage
102
+ #
103
+ # @param [String] key the parameter name (key of the JSON property)
104
+ # @param [Object] value the parameter value (value of the JSON property)
105
+ def raw(key, value)
106
+ @raw_parameters[key] = JSON.generate(value)
107
+ end
108
+ end
109
+
110
+ class ViewRow
111
+ # @return [String]
112
+ attr_accessor :id
113
+
114
+ # @return [#to_json]
115
+ attr_accessor :key
116
+
117
+ # @return [#to_json]
118
+ attr_accessor :value
119
+
120
+ # @yieldparam [ViewRow] self
121
+ def initialize
122
+ yield self if block_given?
123
+ end
124
+ end
125
+
126
+ class ViewMetaData
127
+ # @return [Integer]
128
+ attr_accessor :total_rows
129
+
130
+ attr_writer :debug_info
131
+
132
+ def debug_info
133
+ JSON.parse(@debug_info)
134
+ end
135
+
136
+ # @yieldparam [ViewMetaData] self
137
+ def initialize
138
+ yield self if block_given?
139
+ end
140
+ end
141
+
142
+ class ViewResult
143
+ # @return [QueryMetaData] returns object representing additional metadata associated with this query
144
+ attr_accessor :meta_data
145
+
146
+ # @return [Array<ViewRow>]
147
+ attr_accessor :rows
148
+
149
+ # @yieldparam [ViewResult] self
150
+ def initialize
151
+ yield self if block_given?
152
+ end
153
+ end
154
+ end
155
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: couchbase
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.0.alpha.3
4
+ version: 3.0.0.alpha.4
5
5
  platform: universal-darwin-19
6
6
  authors:
7
7
  - Sergey Avseyev
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-06-12 00:00:00.000000000 Z
11
+ date: 2020-06-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -87,19 +87,25 @@ files:
87
87
  - LICENSE.txt
88
88
  - README.md
89
89
  - Rakefile
90
+ - bin/check-cluster
90
91
  - bin/console
91
92
  - bin/init-cluster
92
93
  - bin/setup
93
94
  - couchbase.gemspec
95
+ - examples/analytics.rb
94
96
  - examples/crud.rb
97
+ - examples/managing_analytics_indexes.rb
95
98
  - examples/managing_buckets.rb
96
99
  - examples/managing_collections.rb
97
100
  - examples/managing_query_indexes.rb
98
101
  - examples/managing_search_indexes.rb
102
+ - examples/managing_view_indexes.rb
99
103
  - examples/query.rb
100
104
  - examples/query_with_consistency.rb
101
105
  - examples/search.rb
106
+ - examples/search_with_consistency.rb
102
107
  - examples/subdocument.rb
108
+ - examples/view.rb
103
109
  - ext/.clang-format
104
110
  - ext/.clang-tidy
105
111
  - ext/.cmake-format.yaml
@@ -137,6 +143,10 @@ files:
137
143
  - ext/couchbase/document_id.hxx
138
144
  - ext/couchbase/error_map.hxx
139
145
  - ext/couchbase/errors.hxx
146
+ - ext/couchbase/io/dns_client.hxx
147
+ - ext/couchbase/io/dns_codec.hxx
148
+ - ext/couchbase/io/dns_config.hxx
149
+ - ext/couchbase/io/dns_message.hxx
140
150
  - ext/couchbase/io/http_message.hxx
141
151
  - ext/couchbase/io/http_parser.hxx
142
152
  - ext/couchbase/io/http_session.hxx
@@ -146,6 +156,17 @@ files:
146
156
  - ext/couchbase/io/session_manager.hxx
147
157
  - ext/couchbase/mutation_token.hxx
148
158
  - ext/couchbase/operations.hxx
159
+ - ext/couchbase/operations/analytics_dataset_create.hxx
160
+ - ext/couchbase/operations/analytics_dataset_drop.hxx
161
+ - ext/couchbase/operations/analytics_dataset_get_all.hxx
162
+ - ext/couchbase/operations/analytics_dataverse_create.hxx
163
+ - ext/couchbase/operations/analytics_dataverse_drop.hxx
164
+ - ext/couchbase/operations/analytics_get_pending_mutations.hxx
165
+ - ext/couchbase/operations/analytics_index_create.hxx
166
+ - ext/couchbase/operations/analytics_index_drop.hxx
167
+ - ext/couchbase/operations/analytics_index_get_all.hxx
168
+ - ext/couchbase/operations/analytics_link_connect.hxx
169
+ - ext/couchbase/operations/analytics_link_disconnect.hxx
149
170
  - ext/couchbase/operations/bucket_create.hxx
150
171
  - ext/couchbase/operations/bucket_drop.hxx
151
172
  - ext/couchbase/operations/bucket_flush.hxx
@@ -157,6 +178,8 @@ files:
157
178
  - ext/couchbase/operations/collection_create.hxx
158
179
  - ext/couchbase/operations/collection_drop.hxx
159
180
  - ext/couchbase/operations/command.hxx
181
+ - ext/couchbase/operations/design_document.hxx
182
+ - ext/couchbase/operations/document_analytics.hxx
160
183
  - ext/couchbase/operations/document_decrement.hxx
161
184
  - ext/couchbase/operations/document_exists.hxx
162
185
  - ext/couchbase/operations/document_get.hxx
@@ -174,6 +197,7 @@ files:
174
197
  - ext/couchbase/operations/document_touch.hxx
175
198
  - ext/couchbase/operations/document_unlock.hxx
176
199
  - ext/couchbase/operations/document_upsert.hxx
200
+ - ext/couchbase/operations/document_view.hxx
177
201
  - ext/couchbase/operations/query_index_build_deferred.hxx
178
202
  - ext/couchbase/operations/query_index_create.hxx
179
203
  - ext/couchbase/operations/query_index_drop.hxx
@@ -191,6 +215,10 @@ files:
191
215
  - ext/couchbase/operations/search_index_get_all.hxx
192
216
  - ext/couchbase/operations/search_index_get_documents_count.hxx
193
217
  - ext/couchbase/operations/search_index_upsert.hxx
218
+ - ext/couchbase/operations/view_index_drop.hxx
219
+ - ext/couchbase/operations/view_index_get.hxx
220
+ - ext/couchbase/operations/view_index_get_all.hxx
221
+ - ext/couchbase/operations/view_index_upsert.hxx
194
222
  - ext/couchbase/platform/base64.cc
195
223
  - ext/couchbase/platform/base64.h
196
224
  - ext/couchbase/platform/random.cc
@@ -239,6 +267,7 @@ files:
239
267
  - ext/couchbase/service_type.hxx
240
268
  - ext/couchbase/timeout_defaults.hxx
241
269
  - ext/couchbase/utils/byteswap.hxx
270
+ - ext/couchbase/utils/connection_string.hxx
242
271
  - ext/couchbase/utils/crc32.hxx
243
272
  - ext/couchbase/utils/url_codec.hxx
244
273
  - ext/couchbase/version.hxx
@@ -2132,6 +2161,7 @@ files:
2132
2161
  - ext/third_party/spdlog/tests/utils.cpp
2133
2162
  - ext/third_party/spdlog/tests/utils.h
2134
2163
  - lib/couchbase.rb
2164
+ - lib/couchbase/analytics_options.rb
2135
2165
  - lib/couchbase/authenticator.rb
2136
2166
  - lib/couchbase/binary_collection.rb
2137
2167
  - lib/couchbase/binary_collection_options.rb
@@ -2151,10 +2181,12 @@ files:
2151
2181
  - lib/couchbase/management/user_manager.rb
2152
2182
  - lib/couchbase/management/view_index_manager.rb
2153
2183
  - lib/couchbase/mutation_state.rb
2184
+ - lib/couchbase/query_options.rb
2154
2185
  - lib/couchbase/scope.rb
2155
2186
  - lib/couchbase/search_options.rb
2156
2187
  - lib/couchbase/subdoc.rb
2157
2188
  - lib/couchbase/version.rb
2189
+ - lib/couchbase/view_options.rb
2158
2190
  - rbi/couchbase.rbi
2159
2191
  homepage: https://www.couchbase.com
2160
2192
  licenses: