couchbase 4.2.8-dev.1 → 4.2.9

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 (317) hide show
  1. package/CMakeLists.txt +1 -1
  2. package/deps/couchbase-cxx-cache/mozilla-ca-bundle.crt +139 -56
  3. package/deps/couchbase-cxx-cache/mozilla-ca-bundle.sha256 +1 -1
  4. package/deps/couchbase-cxx-client/CMakeLists.txt +397 -424
  5. package/deps/couchbase-cxx-client/core/agent_config.hxx +1 -1
  6. package/deps/couchbase-cxx-client/core/agent_group.cxx +0 -1
  7. package/deps/couchbase-cxx-client/core/agent_group.hxx +9 -0
  8. package/deps/couchbase-cxx-client/core/agent_group_config.hxx +1 -1
  9. package/deps/couchbase-cxx-client/core/bucket.cxx +22 -8
  10. package/deps/couchbase-cxx-client/core/bucket.hxx +3 -1
  11. package/deps/couchbase-cxx-client/core/cluster.cxx +1453 -108
  12. package/deps/couchbase-cxx-client/core/cluster.hxx +183 -473
  13. package/deps/couchbase-cxx-client/core/cluster_agent_config.hxx +1 -1
  14. package/deps/couchbase-cxx-client/core/cluster_options.cxx +12 -2
  15. package/deps/couchbase-cxx-client/core/cluster_options.hxx +9 -8
  16. package/deps/couchbase-cxx-client/core/config_profiles.cxx +2 -2
  17. package/deps/couchbase-cxx-client/core/config_profiles.hxx +1 -1
  18. package/deps/couchbase-cxx-client/core/core_sdk_shim.cxx +1 -2
  19. package/deps/couchbase-cxx-client/core/core_sdk_shim.hxx +3 -2
  20. package/deps/couchbase-cxx-client/core/diagnostics.hxx +0 -1
  21. package/deps/couchbase-cxx-client/core/dispatcher.cxx +2 -2
  22. package/deps/couchbase-cxx-client/core/impl/analytics.cxx +38 -76
  23. package/deps/couchbase-cxx-client/core/impl/analytics.hxx +40 -0
  24. package/deps/couchbase-cxx-client/core/impl/analytics_index_manager.cxx +820 -0
  25. package/deps/couchbase-cxx-client/core/impl/binary_collection.cxx +403 -0
  26. package/deps/couchbase-cxx-client/core/impl/bucket.cxx +78 -0
  27. package/deps/couchbase-cxx-client/core/impl/bucket_manager.cxx +433 -0
  28. package/deps/couchbase-cxx-client/core/impl/cluster.cxx +226 -44
  29. package/deps/couchbase-cxx-client/core/impl/collection.cxx +1384 -0
  30. package/deps/couchbase-cxx-client/core/impl/collection_manager.cxx +306 -0
  31. package/deps/couchbase-cxx-client/core/impl/configuration_profiles_registry.cxx +3 -1
  32. package/deps/couchbase-cxx-client/core/impl/dns_srv_tracker.cxx +2 -0
  33. package/deps/couchbase-cxx-client/core/{operations/mcbp_noop.cxx → impl/doc_id_query.cxx} +19 -15
  34. package/deps/couchbase-cxx-client/core/impl/key_value_error_category.cxx +4 -2
  35. package/deps/couchbase-cxx-client/core/impl/lookup_in_all_replicas.hxx +0 -10
  36. package/deps/couchbase-cxx-client/core/impl/lookup_in_any_replica.hxx +0 -10
  37. package/deps/couchbase-cxx-client/core/impl/observe_poll.cxx +24 -17
  38. package/deps/couchbase-cxx-client/core/impl/observe_poll.hxx +1 -1
  39. package/deps/couchbase-cxx-client/core/impl/query.cxx +45 -68
  40. package/deps/couchbase-cxx-client/core/impl/query.hxx +34 -0
  41. package/deps/couchbase-cxx-client/core/impl/query_index_manager.cxx +628 -0
  42. package/deps/couchbase-cxx-client/core/impl/scope.cxx +172 -0
  43. package/deps/couchbase-cxx-client/core/impl/search.cxx +12 -61
  44. package/deps/couchbase-cxx-client/core/impl/search.hxx +37 -0
  45. package/deps/couchbase-cxx-client/core/impl/search_index_manager.cxx +469 -0
  46. package/deps/couchbase-cxx-client/core/impl/search_row_location.cxx +12 -0
  47. package/deps/couchbase-cxx-client/core/impl/search_sort_geo_distance.cxx +87 -0
  48. package/deps/couchbase-cxx-client/core/impl/with_legacy_durability.hxx +23 -25
  49. package/deps/couchbase-cxx-client/core/io/dns_config.cxx +28 -0
  50. package/deps/couchbase-cxx-client/core/io/dns_config.hxx +6 -25
  51. package/deps/couchbase-cxx-client/core/io/http_session_manager.hxx +9 -1
  52. package/deps/couchbase-cxx-client/core/io/mcbp_command.hxx +1 -1
  53. package/deps/couchbase-cxx-client/core/io/mcbp_message.hxx +3 -2
  54. package/deps/couchbase-cxx-client/core/io/mcbp_session.cxx +51 -21
  55. package/deps/couchbase-cxx-client/core/io/mcbp_session.hxx +2 -1
  56. package/deps/couchbase-cxx-client/core/logger/logger.hxx +4 -4
  57. package/deps/couchbase-cxx-client/core/management/bucket_settings.hxx +1 -1
  58. package/deps/couchbase-cxx-client/core/mcbp/packet.cxx +1 -1
  59. package/deps/couchbase-cxx-client/core/mcbp/queue_callback.hxx +1 -1
  60. package/deps/couchbase-cxx-client/core/meta/features.hxx +28 -0
  61. package/deps/couchbase-cxx-client/core/operations/document_query.cxx +17 -1
  62. package/deps/couchbase-cxx-client/core/operations/document_query.hxx +1 -1
  63. package/deps/couchbase-cxx-client/core/operations/management/analytics_dataset_create.cxx +2 -0
  64. package/deps/couchbase-cxx-client/core/operations/management/analytics_dataset_drop.cxx +2 -0
  65. package/deps/couchbase-cxx-client/core/operations/management/analytics_dataverse_create.cxx +2 -0
  66. package/deps/couchbase-cxx-client/core/operations/management/analytics_dataverse_drop.cxx +2 -0
  67. package/deps/couchbase-cxx-client/core/operations/management/analytics_get_pending_mutations.cxx +2 -0
  68. package/deps/couchbase-cxx-client/core/operations/management/analytics_index_drop.cxx +2 -0
  69. package/deps/couchbase-cxx-client/core/operations/management/analytics_link_connect.cxx +2 -0
  70. package/deps/couchbase-cxx-client/core/operations/management/analytics_link_disconnect.cxx +2 -0
  71. package/deps/couchbase-cxx-client/core/operations/management/analytics_link_drop.cxx +2 -0
  72. package/deps/couchbase-cxx-client/core/operations/management/analytics_link_get_all.cxx +2 -0
  73. package/deps/couchbase-cxx-client/core/operations/management/bucket_create.cxx +1 -1
  74. package/deps/couchbase-cxx-client/core/operations/management/bucket_describe.cxx +2 -0
  75. package/deps/couchbase-cxx-client/core/operations/management/bucket_drop.cxx +2 -0
  76. package/deps/couchbase-cxx-client/core/operations/management/bucket_flush.cxx +2 -0
  77. package/deps/couchbase-cxx-client/core/operations/management/bucket_get.cxx +2 -0
  78. package/deps/couchbase-cxx-client/core/operations/management/change_password.cxx +3 -1
  79. package/deps/couchbase-cxx-client/core/operations/management/collection_create.cxx +2 -0
  80. package/deps/couchbase-cxx-client/core/operations/management/collection_drop.cxx +2 -0
  81. package/deps/couchbase-cxx-client/core/operations/management/collection_update.cxx +2 -0
  82. package/deps/couchbase-cxx-client/core/operations/management/error_utils.cxx +6 -5
  83. package/deps/couchbase-cxx-client/core/operations/management/eventing_deploy_function.cxx +2 -0
  84. package/deps/couchbase-cxx-client/core/operations/management/eventing_drop_function.cxx +2 -0
  85. package/deps/couchbase-cxx-client/core/operations/management/eventing_get_function.cxx +2 -0
  86. package/deps/couchbase-cxx-client/core/operations/management/eventing_pause_function.cxx +2 -0
  87. package/deps/couchbase-cxx-client/core/operations/management/eventing_resume_function.cxx +2 -0
  88. package/deps/couchbase-cxx-client/core/operations/management/eventing_undeploy_function.cxx +2 -0
  89. package/deps/couchbase-cxx-client/core/operations/management/eventing_upsert_function.cxx +2 -0
  90. package/deps/couchbase-cxx-client/core/operations/management/group_drop.cxx +2 -0
  91. package/deps/couchbase-cxx-client/core/operations/management/group_get.cxx +2 -0
  92. package/deps/couchbase-cxx-client/core/operations/management/group_get_all.cxx +1 -1
  93. package/deps/couchbase-cxx-client/core/operations/management/query_index_build_deferred.hxx +2 -2
  94. package/deps/couchbase-cxx-client/core/operations/management/query_index_create.cxx +4 -1
  95. package/deps/couchbase-cxx-client/core/operations/management/query_index_drop.cxx +4 -1
  96. package/deps/couchbase-cxx-client/core/operations/management/query_index_get_all.cxx +1 -1
  97. package/deps/couchbase-cxx-client/core/operations/management/query_index_get_all.hxx +1 -1
  98. package/deps/couchbase-cxx-client/core/operations/management/scope_create.cxx +2 -0
  99. package/deps/couchbase-cxx-client/core/operations/management/scope_drop.cxx +2 -0
  100. package/deps/couchbase-cxx-client/core/operations/management/scope_get_all.cxx +2 -0
  101. package/deps/couchbase-cxx-client/core/operations/management/search_get_stats.cxx +4 -4
  102. package/deps/couchbase-cxx-client/core/operations/management/search_get_stats.hxx +4 -4
  103. package/deps/couchbase-cxx-client/core/operations/management/search_index_analyze_document.cxx +2 -0
  104. package/deps/couchbase-cxx-client/core/operations/management/search_index_control_ingest.cxx +2 -0
  105. package/deps/couchbase-cxx-client/core/operations/management/search_index_control_plan_freeze.cxx +2 -0
  106. package/deps/couchbase-cxx-client/core/operations/management/search_index_control_query.cxx +2 -0
  107. package/deps/couchbase-cxx-client/core/operations/management/search_index_drop.cxx +2 -0
  108. package/deps/couchbase-cxx-client/core/operations/management/search_index_get.cxx +2 -0
  109. package/deps/couchbase-cxx-client/core/operations/management/search_index_get_all.cxx +1 -1
  110. package/deps/couchbase-cxx-client/core/operations/management/search_index_get_documents_count.cxx +2 -0
  111. package/deps/couchbase-cxx-client/core/operations/management/search_index_get_stats.cxx +2 -0
  112. package/deps/couchbase-cxx-client/core/operations/management/search_index_upsert.cxx +2 -0
  113. package/deps/couchbase-cxx-client/core/operations/management/view_index_drop.cxx +2 -0
  114. package/deps/couchbase-cxx-client/core/operations/management/view_index_get.cxx +2 -0
  115. package/deps/couchbase-cxx-client/core/operations/management/view_index_get_all.cxx +2 -0
  116. package/deps/couchbase-cxx-client/core/operations/management/view_index_upsert.cxx +2 -0
  117. package/deps/couchbase-cxx-client/core/operations.hxx +0 -1
  118. package/deps/couchbase-cxx-client/core/operations_fwd.hxx +260 -0
  119. package/deps/couchbase-cxx-client/core/origin.cxx +146 -5
  120. package/deps/couchbase-cxx-client/core/origin.hxx +30 -140
  121. package/deps/couchbase-cxx-client/core/protocol/cmd_cluster_map_change_notification.hxx +3 -3
  122. package/deps/couchbase-cxx-client/core/protocol/cmd_hello.hxx +5 -0
  123. package/deps/couchbase-cxx-client/core/protocol/cmd_observe_seqno.hxx +4 -4
  124. package/deps/couchbase-cxx-client/core/protocol/hello_feature.hxx +6 -0
  125. package/deps/couchbase-cxx-client/core/protocol/hello_feature_fmt.hxx +3 -0
  126. package/deps/couchbase-cxx-client/core/protocol/status.cxx +6 -0
  127. package/deps/couchbase-cxx-client/core/protocol/status.hxx +1 -0
  128. package/deps/couchbase-cxx-client/core/query_context.hxx +11 -7
  129. package/deps/couchbase-cxx-client/core/range_scan_orchestrator.cxx +1 -1
  130. package/deps/couchbase-cxx-client/core/topology/configuration.cxx +23 -0
  131. package/deps/couchbase-cxx-client/core/topology/configuration.hxx +8 -12
  132. package/deps/couchbase-cxx-client/core/topology/configuration_fmt.hxx +3 -3
  133. package/deps/couchbase-cxx-client/core/topology/configuration_json.hxx +2 -0
  134. package/deps/couchbase-cxx-client/core/topology/error_map.hxx +2 -2
  135. package/deps/couchbase-cxx-client/core/topology/error_map_json.hxx +4 -0
  136. package/deps/couchbase-cxx-client/core/transactions/active_transaction_record.cxx +58 -0
  137. package/deps/couchbase-cxx-client/core/transactions/active_transaction_record.hxx +5 -40
  138. package/deps/couchbase-cxx-client/core/transactions/async_attempt_context.cxx +30 -0
  139. package/deps/couchbase-cxx-client/core/transactions/atr_cleanup_entry.cxx +18 -18
  140. package/deps/couchbase-cxx-client/core/transactions/attempt_context.cxx +36 -0
  141. package/deps/couchbase-cxx-client/core/transactions/attempt_context_impl.cxx +39 -41
  142. package/deps/couchbase-cxx-client/core/transactions/attempt_context_impl.hxx +2 -2
  143. package/deps/couchbase-cxx-client/core/transactions/internal/atr_cleanup_entry.hxx +3 -1
  144. package/deps/couchbase-cxx-client/core/transactions/internal/atr_entry.hxx +2 -0
  145. package/deps/couchbase-cxx-client/core/transactions/internal/doc_record.cxx +32 -0
  146. package/deps/couchbase-cxx-client/core/transactions/internal/doc_record.hxx +4 -30
  147. package/deps/couchbase-cxx-client/core/transactions/internal/doc_record_fmt.hxx +41 -0
  148. package/deps/couchbase-cxx-client/core/transactions/internal/logging.hxx +17 -15
  149. package/deps/couchbase-cxx-client/core/transactions/internal/transaction_context.hxx +1 -1
  150. package/deps/couchbase-cxx-client/core/transactions/internal/transactions_cleanup.hxx +4 -4
  151. package/deps/couchbase-cxx-client/core/transactions/internal/utils.hxx +1 -13
  152. package/deps/couchbase-cxx-client/core/transactions/result.hxx +0 -26
  153. package/deps/couchbase-cxx-client/core/transactions/result_fmt.hxx +46 -0
  154. package/deps/couchbase-cxx-client/core/transactions/staged_mutation.cxx +16 -14
  155. package/deps/couchbase-cxx-client/core/transactions/transaction_context.cxx +6 -6
  156. package/deps/couchbase-cxx-client/core/transactions/transaction_keyspace.cxx +48 -0
  157. package/deps/couchbase-cxx-client/core/transactions/transaction_links.hxx +1 -0
  158. package/deps/couchbase-cxx-client/core/transactions/transaction_options.cxx +61 -4
  159. package/deps/couchbase-cxx-client/core/transactions/transactions.cxx +9 -8
  160. package/deps/couchbase-cxx-client/core/transactions/transactions_cleanup.cxx +9 -16
  161. package/deps/couchbase-cxx-client/core/transactions/transactions_config.cxx +7 -6
  162. package/deps/couchbase-cxx-client/core/transactions.hxx +6 -5
  163. package/deps/couchbase-cxx-client/core/utils/join_strings.hxx +4 -3
  164. package/deps/couchbase-cxx-client/core/utils/keyspace.hxx +4 -4
  165. package/deps/couchbase-cxx-client/couchbase/allow_querying_search_index_options.hxx +44 -0
  166. package/deps/couchbase-cxx-client/couchbase/analytics_index_manager.hxx +463 -0
  167. package/deps/couchbase-cxx-client/couchbase/analyze_document_options.hxx +44 -0
  168. package/deps/couchbase-cxx-client/couchbase/append_options.hxx +0 -24
  169. package/deps/couchbase-cxx-client/couchbase/behavior_options.hxx +1 -1
  170. package/deps/couchbase-cxx-client/couchbase/binary_collection.hxx +19 -115
  171. package/deps/couchbase-cxx-client/couchbase/bucket.hxx +13 -30
  172. package/deps/couchbase-cxx-client/couchbase/bucket_manager.hxx +8 -7
  173. package/deps/couchbase-cxx-client/couchbase/build_query_index_options.hxx +0 -1
  174. package/deps/couchbase-cxx-client/couchbase/cluster.hxx +41 -73
  175. package/deps/couchbase-cxx-client/couchbase/cluster_options.hxx +1 -27
  176. package/deps/couchbase-cxx-client/couchbase/collection.hxx +176 -386
  177. package/deps/couchbase-cxx-client/couchbase/collection_manager.hxx +8 -9
  178. package/deps/couchbase-cxx-client/couchbase/collection_query_index_manager.hxx +21 -24
  179. package/deps/couchbase-cxx-client/couchbase/connect_link_analytics_options.hxx +116 -0
  180. package/deps/couchbase-cxx-client/couchbase/create_bucket_options.hxx +3 -3
  181. package/deps/couchbase-cxx-client/couchbase/create_collection_options.hxx +3 -2
  182. package/deps/couchbase-cxx-client/couchbase/create_dataset_analytics_options.hxx +120 -0
  183. package/deps/couchbase-cxx-client/couchbase/create_dataverse_analytics_options.hxx +85 -0
  184. package/deps/couchbase-cxx-client/couchbase/create_index_analytics_options.hxx +103 -0
  185. package/deps/couchbase-cxx-client/couchbase/create_link_analytics_options.hxx +63 -0
  186. package/deps/couchbase-cxx-client/couchbase/decrement_options.hxx +0 -23
  187. package/deps/couchbase-cxx-client/couchbase/disallow_querying_search_index_options.hxx +43 -0
  188. package/deps/couchbase-cxx-client/couchbase/disconnect_link_analytics_options.hxx +105 -0
  189. package/deps/couchbase-cxx-client/couchbase/drop_dataset_analytics_options.hxx +103 -0
  190. package/deps/couchbase-cxx-client/couchbase/drop_dataverse_analytics_options.hxx +84 -0
  191. package/deps/couchbase-cxx-client/couchbase/drop_index_analytics_options.hxx +103 -0
  192. package/deps/couchbase-cxx-client/couchbase/drop_link_analytics_options.hxx +63 -0
  193. package/deps/couchbase-cxx-client/couchbase/drop_search_index_options.hxx +43 -0
  194. package/deps/couchbase-cxx-client/couchbase/error_codes.hxx +22 -1
  195. package/deps/couchbase-cxx-client/couchbase/exists_options.hxx +0 -23
  196. package/deps/couchbase-cxx-client/couchbase/fmt/key_value_error_map_attribute.hxx +6 -0
  197. package/deps/couchbase-cxx-client/couchbase/fmt/key_value_status_code.hxx +3 -0
  198. package/deps/couchbase-cxx-client/couchbase/fmt/transaction_keyspace.hxx +37 -0
  199. package/deps/couchbase-cxx-client/couchbase/freeze_plan_search_index_options.hxx +43 -0
  200. package/deps/couchbase-cxx-client/couchbase/get_all_datasets_analytics_options.hxx +66 -0
  201. package/deps/couchbase-cxx-client/couchbase/get_all_indexes_analytics_options.hxx +65 -0
  202. package/deps/couchbase-cxx-client/couchbase/get_all_query_indexes_options.hxx +1 -4
  203. package/deps/couchbase-cxx-client/couchbase/get_all_replicas_options.hxx +0 -23
  204. package/deps/couchbase-cxx-client/couchbase/get_all_search_indexes_options.hxx +45 -0
  205. package/deps/couchbase-cxx-client/couchbase/get_and_lock_options.hxx +0 -24
  206. package/deps/couchbase-cxx-client/couchbase/get_and_touch_options.hxx +0 -24
  207. package/deps/couchbase-cxx-client/couchbase/get_any_replica_options.hxx +0 -23
  208. package/deps/couchbase-cxx-client/couchbase/get_indexed_search_index_options.hxx +43 -0
  209. package/deps/couchbase-cxx-client/couchbase/get_links_analytics_options.hxx +121 -0
  210. package/deps/couchbase-cxx-client/couchbase/get_options.hxx +0 -23
  211. package/deps/couchbase-cxx-client/couchbase/get_pending_mutations_analytics_options.hxx +67 -0
  212. package/deps/couchbase-cxx-client/couchbase/get_search_index_options.hxx +44 -0
  213. package/deps/couchbase-cxx-client/couchbase/increment_options.hxx +0 -23
  214. package/deps/couchbase-cxx-client/couchbase/insert_options.hxx +0 -24
  215. package/deps/couchbase-cxx-client/couchbase/key_value_error_map_attribute.hxx +12 -0
  216. package/deps/couchbase-cxx-client/couchbase/key_value_status_code.hxx +1 -0
  217. package/deps/couchbase-cxx-client/couchbase/lookup_in_options.hxx +0 -24
  218. package/deps/couchbase-cxx-client/couchbase/management/analytics_dataset.hxx +48 -0
  219. package/deps/couchbase-cxx-client/couchbase/management/analytics_index.hxx +48 -0
  220. package/deps/couchbase-cxx-client/couchbase/management/analytics_link.hxx +239 -0
  221. package/deps/couchbase-cxx-client/couchbase/management/query_index.hxx +3 -3
  222. package/deps/couchbase-cxx-client/couchbase/management/search_index.hxx +40 -0
  223. package/deps/couchbase-cxx-client/couchbase/manager_error_context.hxx +0 -1
  224. package/deps/couchbase-cxx-client/couchbase/mutate_in_options.hxx +0 -24
  225. package/deps/couchbase-cxx-client/couchbase/network_options.hxx +1 -1
  226. package/deps/couchbase-cxx-client/couchbase/pause_ingest_search_index_options.hxx +43 -0
  227. package/deps/couchbase-cxx-client/couchbase/phrase_query.hxx +19 -0
  228. package/deps/couchbase-cxx-client/couchbase/prepend_options.hxx +0 -24
  229. package/deps/couchbase-cxx-client/couchbase/query_index_manager.hxx +99 -20
  230. package/deps/couchbase-cxx-client/couchbase/query_options.hxx +0 -21
  231. package/deps/couchbase-cxx-client/couchbase/remove_options.hxx +0 -23
  232. package/deps/couchbase-cxx-client/couchbase/replace_link_analytics_options.hxx +63 -0
  233. package/deps/couchbase-cxx-client/couchbase/replace_options.hxx +0 -24
  234. package/deps/couchbase-cxx-client/couchbase/resume_ingest_search_index_options.hxx +43 -0
  235. package/deps/couchbase-cxx-client/couchbase/scope.hxx +13 -45
  236. package/deps/couchbase-cxx-client/couchbase/search_facet_result.hxx +1 -7
  237. package/deps/couchbase-cxx-client/couchbase/search_geo_distance_units.hxx +26 -0
  238. package/deps/couchbase-cxx-client/couchbase/search_index_manager.hxx +292 -0
  239. package/deps/couchbase-cxx-client/couchbase/search_row_location.hxx +10 -0
  240. package/deps/couchbase-cxx-client/couchbase/search_sort_geo_distance.hxx +84 -0
  241. package/deps/couchbase-cxx-client/couchbase/security_options.hxx +1 -1
  242. package/deps/couchbase-cxx-client/couchbase/touch_options.hxx +0 -24
  243. package/deps/couchbase-cxx-client/couchbase/tracing/request_tracer.hxx +1 -1
  244. package/deps/couchbase-cxx-client/couchbase/transactions/async_attempt_context.hxx +10 -7
  245. package/deps/couchbase-cxx-client/couchbase/transactions/attempt_context.hxx +10 -10
  246. package/deps/couchbase-cxx-client/couchbase/transactions/transaction_keyspace.hxx +8 -58
  247. package/deps/couchbase-cxx-client/couchbase/transactions/transaction_options.hxx +28 -70
  248. package/deps/couchbase-cxx-client/couchbase/transactions/transaction_query_options.hxx +7 -2
  249. package/deps/couchbase-cxx-client/couchbase/transactions/transactions_cleanup_config.hxx +2 -1
  250. package/deps/couchbase-cxx-client/couchbase/transactions/transactions_config.hxx +11 -38
  251. package/deps/couchbase-cxx-client/couchbase/unfreeze_plan_search_index_options.hxx +43 -0
  252. package/deps/couchbase-cxx-client/couchbase/unlock_options.hxx +0 -24
  253. package/deps/couchbase-cxx-client/couchbase/upsert_options.hxx +0 -24
  254. package/deps/couchbase-cxx-client/couchbase/upsert_search_index_options.hxx +41 -0
  255. package/dist/binding.d.ts +7 -9
  256. package/dist/bindingutilities.js +2 -0
  257. package/dist/collection.js +3 -3
  258. package/dist/errors.d.ts +9 -0
  259. package/dist/errors.js +14 -2
  260. package/dist/transactions.d.ts +2 -0
  261. package/dist/transactions.js +2 -3
  262. package/dist/usermanager.js +1 -1
  263. package/package.json +7 -7
  264. package/src/binding.cpp +1 -0
  265. package/src/connection.cpp +12 -9
  266. package/src/connection.hpp +3 -3
  267. package/src/connection_autogen.cpp +7 -5
  268. package/src/constants.cpp +3 -0
  269. package/src/instance.cpp +2 -2
  270. package/src/instance.hpp +1 -1
  271. package/src/jstocbpp_autogen.hpp +21 -38
  272. package/src/jstocbpp_basic.hpp +2 -0
  273. package/src/jstocbpp_errors.hpp +1 -0
  274. package/src/jstocbpp_transactions.hpp +6 -22
  275. package/src/mutationtoken.hpp +1 -0
  276. package/tools/gen-bindings-json.py +39 -16
  277. package/deps/couchbase-cxx-cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/example/CMakeLists.txt +0 -23
  278. package/deps/couchbase-cxx-cache/spdlog/66ab2619a0014319471759c03e2de1af6bda14de/spdlog/example/example.cpp +0 -398
  279. package/deps/couchbase-cxx-client/core/impl/append.cxx +0 -87
  280. package/deps/couchbase-cxx-client/core/impl/build_deferred_query_indexes.cxx +0 -157
  281. package/deps/couchbase-cxx-client/core/impl/create_bucket.cxx +0 -158
  282. package/deps/couchbase-cxx-client/core/impl/create_collection.cxx +0 -83
  283. package/deps/couchbase-cxx-client/core/impl/create_query_index.cxx +0 -232
  284. package/deps/couchbase-cxx-client/core/impl/create_scope.cxx +0 -69
  285. package/deps/couchbase-cxx-client/core/impl/decrement.cxx +0 -96
  286. package/deps/couchbase-cxx-client/core/impl/drop_bucket.cxx +0 -66
  287. package/deps/couchbase-cxx-client/core/impl/drop_collection.cxx +0 -76
  288. package/deps/couchbase-cxx-client/core/impl/drop_query_index.cxx +0 -187
  289. package/deps/couchbase-cxx-client/core/impl/drop_scope.cxx +0 -68
  290. package/deps/couchbase-cxx-client/core/impl/exists.cxx +0 -47
  291. package/deps/couchbase-cxx-client/core/impl/flush_bucket.cxx +0 -66
  292. package/deps/couchbase-cxx-client/core/impl/get.cxx +0 -68
  293. package/deps/couchbase-cxx-client/core/impl/get_all_buckets.cxx +0 -178
  294. package/deps/couchbase-cxx-client/core/impl/get_all_query_indexes.cxx +0 -106
  295. package/deps/couchbase-cxx-client/core/impl/get_all_replicas.cxx +0 -145
  296. package/deps/couchbase-cxx-client/core/impl/get_all_scopes.cxx +0 -94
  297. package/deps/couchbase-cxx-client/core/impl/get_and_lock.cxx +0 -49
  298. package/deps/couchbase-cxx-client/core/impl/get_and_touch.cxx +0 -49
  299. package/deps/couchbase-cxx-client/core/impl/get_any_replica.cxx +0 -134
  300. package/deps/couchbase-cxx-client/core/impl/get_bucket.cxx +0 -168
  301. package/deps/couchbase-cxx-client/core/impl/increment.cxx +0 -96
  302. package/deps/couchbase-cxx-client/core/impl/insert.cxx +0 -90
  303. package/deps/couchbase-cxx-client/core/impl/lookup_in.cxx +0 -69
  304. package/deps/couchbase-cxx-client/core/impl/lookup_in_all_replicas.cxx +0 -178
  305. package/deps/couchbase-cxx-client/core/impl/lookup_in_any_replica.cxx +0 -169
  306. package/deps/couchbase-cxx-client/core/impl/mutate_in.cxx +0 -125
  307. package/deps/couchbase-cxx-client/core/impl/prepend.cxx +0 -87
  308. package/deps/couchbase-cxx-client/core/impl/remove.cxx +0 -86
  309. package/deps/couchbase-cxx-client/core/impl/replace.cxx +0 -102
  310. package/deps/couchbase-cxx-client/core/impl/touch.cxx +0 -49
  311. package/deps/couchbase-cxx-client/core/impl/unlock.cxx +0 -47
  312. package/deps/couchbase-cxx-client/core/impl/update_bucket.cxx +0 -133
  313. package/deps/couchbase-cxx-client/core/impl/update_collection.cxx +0 -83
  314. package/deps/couchbase-cxx-client/core/impl/upsert.cxx +0 -100
  315. package/deps/couchbase-cxx-client/core/impl/watch_query_indexes.cxx +0 -196
  316. package/deps/couchbase-cxx-client/core/operations/mcbp_noop.hxx +0 -49
  317. /package/deps/couchbase-cxx-client/core/impl/{streaming_json_lexter_error_category.cxx → streaming_json_lexer_error_category.cxx} +0 -0
@@ -23,22 +23,22 @@
23
23
  #include <couchbase/drop_primary_query_index_options.hxx>
24
24
  #include <couchbase/drop_query_index_options.hxx>
25
25
  #include <couchbase/get_all_query_indexes_options.hxx>
26
+ #include <couchbase/management/query_index.hxx>
26
27
  #include <couchbase/watch_query_indexes_options.hxx>
27
28
 
28
29
  #include <future>
29
30
  #include <memory>
30
31
 
32
+ namespace couchbase
33
+ {
31
34
  #ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
32
- namespace couchbase::core
35
+ namespace core
33
36
  {
34
37
  class cluster;
35
- } // namespace couchbase::core
38
+ } // namespace core
39
+ class query_index_manager_impl;
36
40
  #endif
37
41
 
38
- namespace couchbase
39
- {
40
- class cluster;
41
-
42
42
  /**
43
43
  * The Query Index Manager interface contains the means for managing indexes used for queries.
44
44
  *
@@ -63,8 +63,19 @@ class query_index_manager
63
63
  const get_all_query_indexes_options& options,
64
64
  get_all_query_indexes_handler&& handler) const;
65
65
 
66
+ /**
67
+ * Get all indexes within a bucket.
68
+ *
69
+ *
70
+ * @param bucket_name specifies the bucket in which we look for the indexes
71
+ * @param options optional parameters
72
+ * @return future object that carries result of the operation
73
+ *
74
+ * @since 1.0.0
75
+ * @committed
76
+ */
66
77
  [[nodiscard]] auto get_all_indexes(std::string bucket_name, const get_all_query_indexes_options& options) const
67
- -> std::future<std::pair<manager_error_context, std::vector<couchbase::management::query::index>>>;
78
+ -> std::future<std::pair<manager_error_context, std::vector<management::query_index>>>;
68
79
 
69
80
  /**
70
81
  * Create an index on a bucket.
@@ -84,6 +95,18 @@ class query_index_manager
84
95
  const create_query_index_options& options,
85
96
  create_query_index_handler&& handler) const;
86
97
 
98
+ /**
99
+ * Create an index on a bucket.
100
+ *
101
+ * @param bucket_name specifies the bucket in which to create the index
102
+ * @param index_name name of the index
103
+ * @param fields the fields to create the index over
104
+ * @param options optional parameters
105
+ * @return future object that carries result of the operation
106
+ *
107
+ * @since 1.0.0
108
+ * @committed
109
+ */
87
110
  [[nodiscard]] auto create_index(std::string bucket_name,
88
111
  std::string index_name,
89
112
  std::vector<std::string> fields,
@@ -101,10 +124,21 @@ class query_index_manager
101
124
  */
102
125
  void create_primary_index(std::string bucket_name,
103
126
  const create_primary_query_index_options& options,
104
- create_query_index_handler&& handler);
127
+ create_query_index_handler&& handler) const;
105
128
 
106
- [[nodiscard]] auto create_primary_index(std::string bucket_name, const create_primary_query_index_options& options)
129
+ /**
130
+ * Create a primary index on a bucket.
131
+ *
132
+ * @param bucket_name specifies the bucket in which to create the index
133
+ * @param options optional parameters
134
+ * @return future object that carries result of the operation
135
+ *
136
+ * @since 1.0.0
137
+ * @committed
138
+ */
139
+ [[nodiscard]] auto create_primary_index(std::string bucket_name, const create_primary_query_index_options& options) const
107
140
  -> std::future<manager_error_context>;
141
+
108
142
  /**
109
143
  * Drop primary index on a bucket.
110
144
  *
@@ -115,12 +149,25 @@ class query_index_manager
115
149
  * @since 1.0.0
116
150
  * @committed
117
151
  */
118
- void drop_primary_index(std::string bucket_name, const drop_primary_query_index_options& options, drop_query_index_handler&& handler);
152
+ void drop_primary_index(std::string bucket_name,
153
+ const drop_primary_query_index_options& options,
154
+ drop_query_index_handler&& handler) const;
119
155
 
120
- [[nodiscard]] auto drop_primary_index(std::string bucket_name, const drop_primary_query_index_options& options)
156
+ /**
157
+ * Drop primary index on a bucket.
158
+ *
159
+ * @param bucket_name name of the bucket in which to drop the primary index
160
+ * @param options optional parameters
161
+ * @return future object that carries result of the operation
162
+ *
163
+ * @since 1.0.0
164
+ * @committed
165
+ */
166
+ [[nodiscard]] auto drop_primary_index(std::string bucket_name, const drop_primary_query_index_options& options) const
121
167
  -> std::future<manager_error_context>;
122
168
 
123
169
  /**
170
+ * Drop specified query index.
124
171
  *
125
172
  * @param bucket_name name of the bucket in which to drop the index
126
173
  * @param index_name name of the index to drop
@@ -133,10 +180,22 @@ class query_index_manager
133
180
  void drop_index(std::string bucket_name,
134
181
  std::string index_name,
135
182
  const drop_query_index_options& options,
136
- drop_query_index_handler&& handler);
183
+ drop_query_index_handler&& handler) const;
137
184
 
138
- [[nodiscard]] auto drop_index(std::string bucket_name, std::string index_name, const drop_query_index_options& options)
185
+ /**
186
+ * Drop specified query index.
187
+ *
188
+ * @param bucket_name name of the bucket in which to drop the index
189
+ * @param index_name name of the index to drop
190
+ * @param options optional parameters
191
+ * @return future object that carries result of the operation
192
+ *
193
+ * @since 1.0.0
194
+ * @committed
195
+ */
196
+ [[nodiscard]] auto drop_index(std::string bucket_name, std::string index_name, const drop_query_index_options& options) const
139
197
  -> std::future<manager_error_context>;
198
+
140
199
  /**
141
200
  * Builds all currently deferred indexes.
142
201
  *
@@ -153,6 +212,18 @@ class query_index_manager
153
212
  const build_query_index_options& options,
154
213
  build_deferred_query_indexes_handler&& handler) const;
155
214
 
215
+ /**
216
+ * Builds all currently deferred indexes.
217
+ *
218
+ * By default, this method will build the indexes on the bucket.
219
+ *
220
+ * @param bucket_name name of the bucket
221
+ * @param options the custom options
222
+ * @return future object that carries result of the operation
223
+ *
224
+ * @since 1.0.0
225
+ * @committed
226
+ */
156
227
  [[nodiscard]] auto build_deferred_indexes(std::string bucket_name, const build_query_index_options& options) const
157
228
  -> std::future<manager_error_context>;
158
229
 
@@ -170,20 +241,28 @@ class query_index_manager
170
241
  void watch_indexes(std::string bucket_name,
171
242
  std::vector<std::string> index_names,
172
243
  const watch_query_indexes_options& options,
173
- watch_query_indexes_handler&& handler);
244
+ watch_query_indexes_handler&& handler) const;
174
245
 
246
+ /**
247
+ * Polls the state of a set of indexes, until they all are online.
248
+ *
249
+ * @param bucket_name name of the bucket in which to look for the indexes
250
+ * @param index_names names of the indexes to watch
251
+ * @param options optional parameters
252
+ * @return future object that carries result of the operation
253
+ *
254
+ * @since 1.0.0
255
+ * @committed
256
+ */
175
257
  [[nodiscard]] auto watch_indexes(std::string bucket_name,
176
258
  std::vector<std::string> index_names,
177
- const watch_query_indexes_options& options) -> std::future<manager_error_context>;
259
+ const watch_query_indexes_options& options) const -> std::future<manager_error_context>;
178
260
 
179
261
  private:
180
262
  friend class cluster;
181
263
 
182
- explicit query_index_manager(std::shared_ptr<couchbase::core::cluster> core)
183
- : core_(std::move(core))
184
- {
185
- }
264
+ explicit query_index_manager(core::cluster core);
186
265
 
187
- std::shared_ptr<couchbase::core::cluster> core_;
266
+ std::shared_ptr<query_index_manager_impl> impl_;
188
267
  };
189
268
  } // namespace couchbase
@@ -568,25 +568,4 @@ struct query_options : public common_options<query_options> {
568
568
  * @uncommitted
569
569
  */
570
570
  using query_handler = std::function<void(couchbase::query_error_context, query_result)>;
571
-
572
- #ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
573
- namespace core
574
- {
575
- class cluster;
576
- namespace impl
577
- {
578
-
579
- /**
580
- * @since 1.0.0
581
- * @internal
582
- */
583
- void
584
- initiate_query_operation(std::shared_ptr<couchbase::core::cluster> core,
585
- std::string statement,
586
- std::optional<std::string> query_context,
587
- query_options::built options,
588
- query_handler&& handler);
589
- #endif
590
- } // namespace impl
591
- } // namespace core
592
571
  } // namespace couchbase
@@ -97,27 +97,4 @@ struct remove_options : public common_durability_options<remove_options> {
97
97
  * @uncommitted
98
98
  */
99
99
  using remove_handler = std::function<void(couchbase::key_value_error_context, mutation_result)>;
100
-
101
- #ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
102
- namespace core
103
- {
104
- class cluster;
105
- namespace impl
106
- {
107
-
108
- /**
109
- * @since 1.0.0
110
- * @internal
111
- */
112
- void
113
- initiate_remove_operation(std::shared_ptr<couchbase::core::cluster> core,
114
- std::string bucket_name,
115
- std::string scope_name,
116
- std::string collection_name,
117
- std::string document_key,
118
- couchbase::remove_options::built options,
119
- couchbase::remove_handler&& handler);
120
- #endif
121
- } // namespace impl
122
- } // namespace core
123
100
  } // namespace couchbase
@@ -0,0 +1,63 @@
1
+ /* -*- Mode: C++; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
2
+ /*
3
+ * Copyright 2023-Present Couchbase, Inc.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+
18
+ #pragma once
19
+
20
+ #include <couchbase/common_options.hxx>
21
+ #include <couchbase/error_codes.hxx>
22
+ #include <couchbase/manager_error_context.hxx>
23
+
24
+ #include <functional>
25
+
26
+ namespace couchbase
27
+ {
28
+ class replace_link_analytics_options : public common_options<replace_link_analytics_options>
29
+ {
30
+ public:
31
+ /**
32
+ * Immutable value object representing consistent options.
33
+ *
34
+ * @since 1.0.0
35
+ * @internal
36
+ */
37
+ struct built : public common_options<replace_link_analytics_options>::built {
38
+ };
39
+
40
+ /**
41
+ * Validates options and returns them as an immutable value.
42
+ *
43
+ * @return consistent options as an immutable value
44
+ *
45
+ * @exception std::system_error with code errc::common::invalid_argument if the options are not valid
46
+ *
47
+ * @since 1.0.0
48
+ * @internal
49
+ */
50
+ [[nodiscard]] auto build() const -> built
51
+ {
52
+ return { build_common_options() };
53
+ }
54
+ };
55
+
56
+ /**
57
+ * The signature for the handler of the @ref analytics_index_manager#replace_link() operation
58
+ *
59
+ * @since 1.0.0
60
+ * @uncommitted
61
+ */
62
+ using replace_link_analytics_handler = std::function<void(couchbase::manager_error_context)>;
63
+ } // namespace couchbase
@@ -157,28 +157,4 @@ struct replace_options : public common_durability_options<replace_options> {
157
157
  * @uncommitted
158
158
  */
159
159
  using replace_handler = std::function<void(couchbase::key_value_error_context, mutation_result)>;
160
-
161
- #ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
162
- namespace core
163
- {
164
- class cluster;
165
- namespace impl
166
- {
167
-
168
- /**
169
- * @since 1.0.0
170
- * @internal
171
- */
172
- void
173
- initiate_replace_operation(std::shared_ptr<couchbase::core::cluster> core,
174
- std::string bucket_name,
175
- std::string scope_name,
176
- std::string collection_name,
177
- std::string document_key,
178
- couchbase::codec::encoded_value encoded,
179
- couchbase::replace_options::built options,
180
- couchbase::replace_handler&& handler);
181
- #endif
182
- } // namespace impl
183
- } // namespace core
184
160
  } // namespace couchbase
@@ -0,0 +1,43 @@
1
+ /* -*- Mode: C++; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
2
+ /*
3
+ * Copyright 2020-Present Couchbase, Inc.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+
18
+ #pragma once
19
+
20
+ #include <couchbase/common_options.hxx>
21
+
22
+ #include <functional>
23
+ #include <memory>
24
+ #include <optional>
25
+ #include <string>
26
+
27
+ namespace couchbase
28
+ {
29
+ struct resume_ingest_search_index_options : public common_options<resume_ingest_search_index_options> {
30
+ public:
31
+ struct built : public common_options<resume_ingest_search_index_options>::built {
32
+ };
33
+
34
+ [[nodiscard]] auto build() const -> built
35
+ {
36
+ return { build_common_options() };
37
+ }
38
+
39
+ private:
40
+ };
41
+
42
+ using resume_ingest_search_index_handler = std::function<void(couchbase::manager_error_context)>;
43
+ } // namespace couchbase
@@ -25,15 +25,17 @@
25
25
 
26
26
  #include <memory>
27
27
 
28
- #ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
29
28
  namespace couchbase
30
29
  {
30
+ #ifndef COUCHBASE_CXX_CLIENT_DOXYGEN
31
+ namespace core
32
+ {
31
33
  class cluster;
32
- } // namespace couchbase
34
+ } // namespace core
35
+ class bucket;
36
+ class scope_impl;
33
37
  #endif
34
38
 
35
- namespace couchbase
36
- {
37
39
  /**
38
40
  * The scope identifies a group of collections and allows high application density as a result.
39
41
  *
@@ -58,10 +60,7 @@ class scope
58
60
  * @since 1.0.0
59
61
  * @committed
60
62
  */
61
- [[nodiscard]] auto bucket_name() const -> const std::string&
62
- {
63
- return bucket_name_;
64
- }
63
+ [[nodiscard]] auto bucket_name() const -> const std::string&;
65
64
 
66
65
  /**
67
66
  * Returns name of the scope.
@@ -71,10 +70,7 @@ class scope
71
70
  * @since 1.0.0
72
71
  * @committed
73
72
  */
74
- [[nodiscard]] auto name() const -> const std::string&
75
- {
76
- return name_;
77
- }
73
+ [[nodiscard]] auto name() const -> const std::string&;
78
74
 
79
75
  /**
80
76
  * Opens a collection for this scope with an explicit name.
@@ -85,16 +81,11 @@ class scope
85
81
  * @since 1.0.0
86
82
  * @committed
87
83
  */
88
- [[nodiscard]] auto collection(std::string_view collection_name) const -> collection
89
- {
90
- return { core_, bucket_name_, name_, collection_name };
91
- }
84
+ [[nodiscard]] auto collection(std::string_view collection_name) const -> collection;
92
85
 
93
86
  /**
94
87
  * Performs a query against the query (N1QL) services.
95
88
  *
96
- * @tparam Handler callable type that implements @ref query_handler signature
97
- *
98
89
  * @param statement the N1QL query statement.
99
90
  * @param options options to customize the query request.
100
91
  * @param handler the handler that implements @ref query_handler
@@ -105,15 +96,7 @@ class scope
105
96
  * @since 1.0.0
106
97
  * @committed
107
98
  */
108
- template<typename Handler>
109
- void query(std::string statement, const query_options& options, Handler&& handler) const
110
- {
111
- return core::impl::initiate_query_operation(core_,
112
- std::move(statement),
113
- fmt::format("default:`{}`.`{}`", bucket_name_, name_),
114
- options.build(),
115
- std::forward<Handler>(handler));
116
- }
99
+ void query(std::string statement, const query_options& options, query_handler&& handler) const;
117
100
 
118
101
  /**
119
102
  * Performs a query against the query (N1QL) services.
@@ -126,15 +109,7 @@ class scope
126
109
  * @committed
127
110
  */
128
111
  [[nodiscard]] auto query(std::string statement, const query_options& options = {}) const
129
- -> std::future<std::pair<query_error_context, query_result>>
130
- {
131
- auto barrier = std::make_shared<std::promise<std::pair<query_error_context, query_result>>>();
132
- auto future = barrier->get_future();
133
- query(std::move(statement), options, [barrier](auto ctx, auto result) {
134
- barrier->set_value({ std::move(ctx), std::move(result) });
135
- });
136
- return future;
137
- }
112
+ -> std::future<std::pair<query_error_context, query_result>>;
138
113
 
139
114
  /**
140
115
  * Performs a query against the full text search services.
@@ -208,15 +183,8 @@ class scope
208
183
  private:
209
184
  friend class bucket;
210
185
 
211
- scope(std::shared_ptr<couchbase::core::cluster> core, std::string_view bucket_name, std::string_view name)
212
- : core_(std::move(core))
213
- , bucket_name_(bucket_name)
214
- , name_(name)
215
- {
216
- }
186
+ scope(core::cluster core, std::string_view bucket_name, std::string_view name);
217
187
 
218
- std::shared_ptr<couchbase::core::cluster> core_;
219
- std::string bucket_name_;
220
- std::string name_;
188
+ std::shared_ptr<scope_impl> impl_;
221
189
  };
222
190
  } // namespace couchbase
@@ -17,14 +17,8 @@
17
17
 
18
18
  #pragma once
19
19
 
20
- #include <couchbase/codec/tao_json_serializer.hxx>
21
- #include <couchbase/search_meta_data.hxx>
22
-
23
- #include "search_row.hxx"
24
- #include <chrono>
25
20
  #include <cinttypes>
26
- #include <optional>
27
- #include <vector>
21
+ #include <string>
28
22
 
29
23
  namespace couchbase
30
24
  {
@@ -0,0 +1,26 @@
1
+ /* -*- Mode: C++; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
2
+ /*
3
+ * Copyright 2023-Present Couchbase, Inc.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+
18
+ #pragma once
19
+
20
+ namespace couchbase
21
+ {
22
+ /**
23
+ * Enumeration of units for geo_distance sorting
24
+ */
25
+ enum class search_geo_distance_units { meters, miles, centimeters, millimeters, nautical_miles, kilometers, feet, yards, inch };
26
+ } // namespace couchbase