couchbase 4.6.0 → 4.7.0-dev.1

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 (320) hide show
  1. package/CMakeLists.txt +2 -1
  2. package/deps/couchbase-cxx-cache/mozilla-ca-bundle.crt +66 -93
  3. package/deps/couchbase-cxx-cache/mozilla-ca-bundle.sha256 +1 -1
  4. package/deps/couchbase-cxx-client/CMakeLists.txt +24 -11
  5. package/deps/couchbase-cxx-client/README.md +17 -16
  6. package/deps/couchbase-cxx-client/cmake/APKBUILD.in +17 -1
  7. package/deps/couchbase-cxx-client/cmake/Bundler.cmake +9 -1
  8. package/deps/couchbase-cxx-client/cmake/Cache.cmake +48 -19
  9. package/deps/couchbase-cxx-client/cmake/CompilerOptions.cmake +3 -1
  10. package/deps/couchbase-cxx-client/cmake/OpenSSL.cmake +10 -2
  11. package/deps/couchbase-cxx-client/cmake/Packaging.cmake +48 -8
  12. package/deps/couchbase-cxx-client/cmake/ThirdPartyDependencies.cmake +43 -1
  13. package/deps/couchbase-cxx-client/cmake/build_config.hxx.in +2 -0
  14. package/deps/couchbase-cxx-client/cmake/couchbase-cxx-client.spec.in +18 -0
  15. package/deps/couchbase-cxx-client/cmake/debian/control +6 -1
  16. package/deps/couchbase-cxx-client/cmake/debian/rules +1 -0
  17. package/deps/couchbase-cxx-client/cmake/tarball_glob.txt +10 -0
  18. package/deps/couchbase-cxx-client/core/app_telemetry_meter.cxx +1 -0
  19. package/deps/couchbase-cxx-client/core/app_telemetry_reporter.cxx +45 -43
  20. package/deps/couchbase-cxx-client/core/app_telemetry_reporter.hxx +4 -3
  21. package/deps/couchbase-cxx-client/core/bucket.cxx +128 -13
  22. package/deps/couchbase-cxx-client/core/bucket.hxx +12 -2
  23. package/deps/couchbase-cxx-client/core/cluster.cxx +304 -152
  24. package/deps/couchbase-cxx-client/core/cluster.hxx +32 -0
  25. package/deps/couchbase-cxx-client/core/cluster_credentials.cxx +25 -0
  26. package/deps/couchbase-cxx-client/core/cluster_credentials.hxx +5 -0
  27. package/deps/couchbase-cxx-client/core/cluster_label_listener.cxx +72 -0
  28. package/deps/couchbase-cxx-client/core/cluster_label_listener.hxx +46 -0
  29. package/deps/couchbase-cxx-client/core/cluster_options.hxx +4 -0
  30. package/deps/couchbase-cxx-client/core/deprecation_utils.hxx +26 -0
  31. package/deps/couchbase-cxx-client/core/error.hxx +27 -0
  32. package/deps/couchbase-cxx-client/core/free_form_http_request.hxx +0 -2
  33. package/deps/couchbase-cxx-client/core/http_component.cxx +12 -48
  34. package/deps/couchbase-cxx-client/core/impl/analytics.cxx +3 -2
  35. package/deps/couchbase-cxx-client/core/impl/analytics.hxx +2 -1
  36. package/deps/couchbase-cxx-client/core/impl/analytics_index_manager.cxx +249 -137
  37. package/deps/couchbase-cxx-client/core/impl/binary_collection.cxx +134 -58
  38. package/deps/couchbase-cxx-client/core/impl/bucket_manager.cxx +87 -35
  39. package/deps/couchbase-cxx-client/core/impl/collection.cxx +560 -245
  40. package/deps/couchbase-cxx-client/core/impl/collection_manager.cxx +89 -49
  41. package/deps/couchbase-cxx-client/core/impl/dns_srv_tracker.cxx +4 -4
  42. package/deps/couchbase-cxx-client/core/impl/error.cxx +20 -13
  43. package/deps/couchbase-cxx-client/core/impl/error.hxx +15 -10
  44. package/deps/couchbase-cxx-client/core/impl/get_all_replicas.hxx +1 -1
  45. package/deps/couchbase-cxx-client/core/impl/get_any_replica.hxx +2 -1
  46. package/deps/couchbase-cxx-client/core/impl/get_replica.hxx +2 -0
  47. package/deps/couchbase-cxx-client/core/impl/lookup_in_replica.hxx +1 -1
  48. package/deps/couchbase-cxx-client/core/impl/observability_recorder.cxx +161 -0
  49. package/deps/couchbase-cxx-client/core/impl/observability_recorder.hxx +77 -0
  50. package/deps/couchbase-cxx-client/core/impl/observe_seqno.hxx +2 -0
  51. package/deps/couchbase-cxx-client/core/impl/public_bucket.cxx +31 -7
  52. package/deps/couchbase-cxx-client/core/impl/public_cluster.cxx +107 -19
  53. package/deps/couchbase-cxx-client/core/impl/query.cxx +6 -3
  54. package/deps/couchbase-cxx-client/core/impl/query.hxx +3 -1
  55. package/deps/couchbase-cxx-client/core/impl/query_index_manager.cxx +267 -102
  56. package/deps/couchbase-cxx-client/core/impl/scope.cxx +53 -11
  57. package/deps/couchbase-cxx-client/core/impl/search.cxx +8 -4
  58. package/deps/couchbase-cxx-client/core/impl/search.hxx +6 -2
  59. package/deps/couchbase-cxx-client/core/impl/search_index_manager.cxx +131 -41
  60. package/deps/couchbase-cxx-client/core/impl/with_cancellation.hxx +75 -0
  61. package/deps/couchbase-cxx-client/core/io/config_tracker.cxx +9 -9
  62. package/deps/couchbase-cxx-client/core/io/config_tracker.hxx +2 -1
  63. package/deps/couchbase-cxx-client/core/io/http_command.hxx +98 -49
  64. package/deps/couchbase-cxx-client/core/io/http_context.hxx +2 -0
  65. package/deps/couchbase-cxx-client/core/io/http_session.cxx +23 -10
  66. package/deps/couchbase-cxx-client/core/io/http_session.hxx +17 -9
  67. package/deps/couchbase-cxx-client/core/io/http_session_manager.hxx +163 -228
  68. package/deps/couchbase-cxx-client/core/io/http_traits.hxx +0 -7
  69. package/deps/couchbase-cxx-client/core/io/mcbp_command.hxx +123 -44
  70. package/deps/couchbase-cxx-client/core/io/mcbp_session.cxx +251 -26
  71. package/deps/couchbase-cxx-client/core/io/mcbp_session.hxx +9 -1
  72. package/deps/couchbase-cxx-client/core/io/mcbp_traits.hxx +0 -8
  73. package/deps/couchbase-cxx-client/core/io/streams.cxx +3 -3
  74. package/deps/couchbase-cxx-client/core/io/streams.hxx +3 -2
  75. package/deps/couchbase-cxx-client/core/meta/features.hxx +15 -0
  76. package/deps/couchbase-cxx-client/core/meta/version.cxx +13 -0
  77. package/deps/couchbase-cxx-client/core/meta/version.hxx +3 -0
  78. package/deps/couchbase-cxx-client/core/metrics/constants.hxx +23 -0
  79. package/deps/couchbase-cxx-client/core/metrics/logging_meter.cxx +5 -5
  80. package/deps/couchbase-cxx-client/core/metrics/meter_wrapper.cxx +65 -63
  81. package/deps/couchbase-cxx-client/core/metrics/meter_wrapper.hxx +12 -10
  82. package/deps/couchbase-cxx-client/core/operations/document_analytics.hxx +0 -5
  83. package/deps/couchbase-cxx-client/core/operations/document_append.hxx +0 -4
  84. package/deps/couchbase-cxx-client/core/operations/document_decrement.hxx +0 -5
  85. package/deps/couchbase-cxx-client/core/operations/document_exists.hxx +0 -7
  86. package/deps/couchbase-cxx-client/core/operations/document_get.hxx +0 -7
  87. package/deps/couchbase-cxx-client/core/operations/document_get_all_replicas.hxx +77 -27
  88. package/deps/couchbase-cxx-client/core/operations/document_get_and_lock.hxx +0 -9
  89. package/deps/couchbase-cxx-client/core/operations/document_get_and_touch.hxx +0 -9
  90. package/deps/couchbase-cxx-client/core/operations/document_get_any_replica.hxx +83 -2
  91. package/deps/couchbase-cxx-client/core/operations/document_get_projected.hxx +0 -9
  92. package/deps/couchbase-cxx-client/core/operations/document_increment.hxx +0 -5
  93. package/deps/couchbase-cxx-client/core/operations/document_insert.hxx +0 -4
  94. package/deps/couchbase-cxx-client/core/operations/document_lookup_in.hxx +0 -9
  95. package/deps/couchbase-cxx-client/core/operations/document_lookup_in_all_replicas.hxx +46 -4
  96. package/deps/couchbase-cxx-client/core/operations/document_lookup_in_any_replica.hxx +121 -43
  97. package/deps/couchbase-cxx-client/core/operations/document_mutate_in.hxx +0 -5
  98. package/deps/couchbase-cxx-client/core/operations/document_prepend.hxx +0 -4
  99. package/deps/couchbase-cxx-client/core/operations/document_query.hxx +0 -4
  100. package/deps/couchbase-cxx-client/core/operations/document_remove.hxx +0 -4
  101. package/deps/couchbase-cxx-client/core/operations/document_replace.hxx +0 -4
  102. package/deps/couchbase-cxx-client/core/operations/document_search.hxx +0 -7
  103. package/deps/couchbase-cxx-client/core/operations/document_touch.hxx +0 -7
  104. package/deps/couchbase-cxx-client/core/operations/document_unlock.hxx +0 -6
  105. package/deps/couchbase-cxx-client/core/operations/document_upsert.hxx +0 -4
  106. package/deps/couchbase-cxx-client/core/operations/document_view.cxx +2 -0
  107. package/deps/couchbase-cxx-client/core/operations/document_view.hxx +10 -13
  108. package/deps/couchbase-cxx-client/core/operations/http_noop.hxx +2 -0
  109. package/deps/couchbase-cxx-client/core/operations/management/analytics_dataset_create.hxx +2 -0
  110. package/deps/couchbase-cxx-client/core/operations/management/analytics_dataset_drop.hxx +2 -0
  111. package/deps/couchbase-cxx-client/core/operations/management/analytics_dataset_get_all.hxx +2 -0
  112. package/deps/couchbase-cxx-client/core/operations/management/analytics_dataverse_create.hxx +2 -0
  113. package/deps/couchbase-cxx-client/core/operations/management/analytics_dataverse_drop.hxx +2 -0
  114. package/deps/couchbase-cxx-client/core/operations/management/analytics_get_pending_mutations.hxx +2 -0
  115. package/deps/couchbase-cxx-client/core/operations/management/analytics_index_create.hxx +2 -0
  116. package/deps/couchbase-cxx-client/core/operations/management/analytics_index_drop.hxx +2 -0
  117. package/deps/couchbase-cxx-client/core/operations/management/analytics_index_get_all.hxx +2 -0
  118. package/deps/couchbase-cxx-client/core/operations/management/analytics_link_connect.hxx +2 -0
  119. package/deps/couchbase-cxx-client/core/operations/management/analytics_link_create.hxx +2 -0
  120. package/deps/couchbase-cxx-client/core/operations/management/analytics_link_disconnect.hxx +2 -0
  121. package/deps/couchbase-cxx-client/core/operations/management/analytics_link_drop.hxx +2 -0
  122. package/deps/couchbase-cxx-client/core/operations/management/analytics_link_get_all.hxx +2 -0
  123. package/deps/couchbase-cxx-client/core/operations/management/analytics_link_replace.hxx +2 -0
  124. package/deps/couchbase-cxx-client/core/operations/management/bucket_create.hxx +2 -0
  125. package/deps/couchbase-cxx-client/core/operations/management/bucket_describe.hxx +2 -0
  126. package/deps/couchbase-cxx-client/core/operations/management/bucket_drop.hxx +2 -0
  127. package/deps/couchbase-cxx-client/core/operations/management/bucket_flush.hxx +2 -0
  128. package/deps/couchbase-cxx-client/core/operations/management/bucket_get.hxx +2 -0
  129. package/deps/couchbase-cxx-client/core/operations/management/bucket_get_all.hxx +2 -0
  130. package/deps/couchbase-cxx-client/core/operations/management/bucket_update.hxx +2 -0
  131. package/deps/couchbase-cxx-client/core/operations/management/change_password.hxx +2 -0
  132. package/deps/couchbase-cxx-client/core/operations/management/cluster_describe.hxx +2 -0
  133. package/deps/couchbase-cxx-client/core/operations/management/cluster_developer_preview_enable.hxx +2 -0
  134. package/deps/couchbase-cxx-client/core/operations/management/collection_create.hxx +2 -0
  135. package/deps/couchbase-cxx-client/core/operations/management/collection_drop.hxx +2 -0
  136. package/deps/couchbase-cxx-client/core/operations/management/collection_update.hxx +2 -0
  137. package/deps/couchbase-cxx-client/core/operations/management/collections_manifest_get.hxx +2 -0
  138. package/deps/couchbase-cxx-client/core/operations/management/error_utils.cxx +4 -1
  139. package/deps/couchbase-cxx-client/core/operations/management/eventing_deploy_function.hxx +2 -0
  140. package/deps/couchbase-cxx-client/core/operations/management/eventing_drop_function.hxx +2 -0
  141. package/deps/couchbase-cxx-client/core/operations/management/eventing_get_all_functions.hxx +2 -0
  142. package/deps/couchbase-cxx-client/core/operations/management/eventing_get_function.hxx +2 -0
  143. package/deps/couchbase-cxx-client/core/operations/management/eventing_get_status.hxx +2 -0
  144. package/deps/couchbase-cxx-client/core/operations/management/eventing_pause_function.hxx +2 -0
  145. package/deps/couchbase-cxx-client/core/operations/management/eventing_resume_function.hxx +2 -0
  146. package/deps/couchbase-cxx-client/core/operations/management/eventing_undeploy_function.hxx +2 -0
  147. package/deps/couchbase-cxx-client/core/operations/management/eventing_upsert_function.hxx +2 -0
  148. package/deps/couchbase-cxx-client/core/operations/management/freeform.hxx +2 -0
  149. package/deps/couchbase-cxx-client/core/operations/management/group_drop.hxx +2 -0
  150. package/deps/couchbase-cxx-client/core/operations/management/group_get.hxx +2 -0
  151. package/deps/couchbase-cxx-client/core/operations/management/group_get_all.hxx +2 -0
  152. package/deps/couchbase-cxx-client/core/operations/management/group_upsert.hxx +2 -0
  153. package/deps/couchbase-cxx-client/core/operations/management/query_index_build.hxx +2 -0
  154. package/deps/couchbase-cxx-client/core/operations/management/query_index_build_deferred.hxx +68 -30
  155. package/deps/couchbase-cxx-client/core/operations/management/query_index_create.hxx +2 -0
  156. package/deps/couchbase-cxx-client/core/operations/management/query_index_drop.hxx +2 -0
  157. package/deps/couchbase-cxx-client/core/operations/management/query_index_get_all.hxx +4 -3
  158. package/deps/couchbase-cxx-client/core/operations/management/query_index_get_all_deferred.hxx +2 -1
  159. package/deps/couchbase-cxx-client/core/operations/management/role_get_all.hxx +2 -0
  160. package/deps/couchbase-cxx-client/core/operations/management/scope_create.hxx +2 -0
  161. package/deps/couchbase-cxx-client/core/operations/management/scope_drop.hxx +2 -0
  162. package/deps/couchbase-cxx-client/core/operations/management/scope_get_all.hxx +2 -0
  163. package/deps/couchbase-cxx-client/core/operations/management/search_get_stats.hxx +2 -0
  164. package/deps/couchbase-cxx-client/core/operations/management/search_index_analyze_document.hxx +2 -0
  165. package/deps/couchbase-cxx-client/core/operations/management/search_index_control_ingest.hxx +2 -0
  166. package/deps/couchbase-cxx-client/core/operations/management/search_index_control_plan_freeze.hxx +2 -0
  167. package/deps/couchbase-cxx-client/core/operations/management/search_index_control_query.hxx +2 -0
  168. package/deps/couchbase-cxx-client/core/operations/management/search_index_drop.hxx +2 -0
  169. package/deps/couchbase-cxx-client/core/operations/management/search_index_get.hxx +2 -0
  170. package/deps/couchbase-cxx-client/core/operations/management/search_index_get_all.hxx +2 -0
  171. package/deps/couchbase-cxx-client/core/operations/management/search_index_get_documents_count.hxx +2 -0
  172. package/deps/couchbase-cxx-client/core/operations/management/search_index_get_stats.hxx +2 -0
  173. package/deps/couchbase-cxx-client/core/operations/management/search_index_upsert.hxx +2 -0
  174. package/deps/couchbase-cxx-client/core/operations/management/user_drop.hxx +2 -0
  175. package/deps/couchbase-cxx-client/core/operations/management/user_get.hxx +2 -0
  176. package/deps/couchbase-cxx-client/core/operations/management/user_get_all.hxx +2 -0
  177. package/deps/couchbase-cxx-client/core/operations/management/user_upsert.hxx +2 -0
  178. package/deps/couchbase-cxx-client/core/operations/management/view_index_drop.hxx +2 -0
  179. package/deps/couchbase-cxx-client/core/operations/management/view_index_get.hxx +2 -0
  180. package/deps/couchbase-cxx-client/core/operations/management/view_index_get_all.hxx +2 -0
  181. package/deps/couchbase-cxx-client/core/operations/management/view_index_upsert.hxx +2 -0
  182. package/deps/couchbase-cxx-client/core/operations/operation_traits.hxx +6 -0
  183. package/deps/couchbase-cxx-client/core/operations.hxx +0 -1
  184. package/deps/couchbase-cxx-client/core/operations_fwd.hxx +8 -0
  185. package/deps/couchbase-cxx-client/core/origin.cxx +67 -12
  186. package/deps/couchbase-cxx-client/core/origin.hxx +13 -8
  187. package/deps/couchbase-cxx-client/core/orphan_reporter.cxx +164 -0
  188. package/deps/couchbase-cxx-client/core/orphan_reporter.hxx +65 -0
  189. package/deps/couchbase-cxx-client/core/sasl/CMakeLists.txt +1 -0
  190. package/deps/couchbase-cxx-client/core/sasl/client.cc +6 -0
  191. package/deps/couchbase-cxx-client/core/sasl/mechanism.cc +2 -1
  192. package/deps/couchbase-cxx-client/core/sasl/mechanism.h +2 -1
  193. package/deps/couchbase-cxx-client/core/sasl/oauthbearer/oauthbearer.cc +41 -0
  194. package/deps/couchbase-cxx-client/core/sasl/oauthbearer/oauthbearer.h +47 -0
  195. package/deps/couchbase-cxx-client/core/tls_context_provider.cxx +44 -0
  196. package/deps/couchbase-cxx-client/core/tls_context_provider.hxx +44 -0
  197. package/deps/couchbase-cxx-client/core/tracing/attribute_helpers.hxx +45 -0
  198. package/deps/couchbase-cxx-client/core/tracing/constants.hxx +148 -68
  199. package/deps/couchbase-cxx-client/core/tracing/threshold_logging_options.hxx +0 -3
  200. package/deps/couchbase-cxx-client/core/tracing/threshold_logging_tracer.cxx +122 -170
  201. package/deps/couchbase-cxx-client/core/tracing/tracer_wrapper.cxx +17 -24
  202. package/deps/couchbase-cxx-client/core/tracing/tracer_wrapper.hxx +8 -10
  203. package/deps/couchbase-cxx-client/core/tracing/wrapper_sdk_tracer.cxx +114 -0
  204. package/deps/couchbase-cxx-client/core/tracing/wrapper_sdk_tracer.hxx +85 -0
  205. package/deps/couchbase-cxx-client/core/transactions/attempt_context_impl.cxx +16 -14
  206. package/deps/couchbase-cxx-client/core/transactions/attempt_context_impl.hxx +4 -4
  207. package/deps/couchbase-cxx-client/core/transactions/transactions.cxx +1 -1
  208. package/deps/couchbase-cxx-client/core/transactions/transactions_cleanup.cxx +1 -2
  209. package/deps/couchbase-cxx-client/core/utils/byteswap.hxx +12 -0
  210. package/deps/couchbase-cxx-client/core/utils/concurrent_fixed_priority_queue.hxx +102 -0
  211. package/deps/couchbase-cxx-client/core/utils/connection_string.cxx +2 -0
  212. package/deps/couchbase-cxx-client/couchbase/certificate_authenticator.hxx +1 -0
  213. package/deps/couchbase-cxx-client/couchbase/cluster.hxx +47 -0
  214. package/deps/couchbase-cxx-client/couchbase/cluster_options.hxx +16 -0
  215. package/deps/couchbase-cxx-client/couchbase/collection.hxx +60 -15
  216. package/deps/couchbase-cxx-client/couchbase/error_codes.hxx +48 -48
  217. package/deps/couchbase-cxx-client/couchbase/jwt_authenticator.hxx +52 -0
  218. package/deps/couchbase-cxx-client/couchbase/metrics/meter.hxx +2 -1
  219. package/deps/couchbase-cxx-client/couchbase/metrics/otel_meter.hxx +75 -80
  220. package/deps/couchbase-cxx-client/couchbase/network_options.hxx +19 -0
  221. package/deps/couchbase-cxx-client/couchbase/password_authenticator.hxx +1 -0
  222. package/deps/couchbase-cxx-client/couchbase/tracing/otel_tracer.hxx +15 -17
  223. package/deps/couchbase-cxx-client/couchbase/tracing/request_span.hxx +2 -2
  224. package/dist/analyticsexecutor.d.ts +15 -0
  225. package/dist/analyticsexecutor.js +79 -50
  226. package/dist/analyticsindexmanager.d.ts +66 -0
  227. package/dist/analyticsindexmanager.js +404 -277
  228. package/dist/analyticstypes.d.ts +5 -0
  229. package/dist/authenticators.d.ts +34 -1
  230. package/dist/authenticators.js +19 -1
  231. package/dist/binarycollection.d.ts +17 -0
  232. package/dist/binding.d.ts +245 -228
  233. package/dist/binding.js +2 -2
  234. package/dist/bindingutilities.js +1 -1
  235. package/dist/bucket.d.ts +8 -0
  236. package/dist/bucket.js +8 -0
  237. package/dist/bucketmanager.d.ts +30 -0
  238. package/dist/bucketmanager.js +128 -69
  239. package/dist/cluster.d.ts +45 -0
  240. package/dist/cluster.js +133 -23
  241. package/dist/collection.d.ts +75 -2
  242. package/dist/collection.js +773 -552
  243. package/dist/collectionmanager.d.ts +34 -0
  244. package/dist/collectionmanager.js +172 -89
  245. package/dist/couchbase.d.ts +5 -0
  246. package/dist/couchbase.js +5 -0
  247. package/dist/datastructures.js +310 -97
  248. package/dist/diagnosticsexecutor.js +1 -1
  249. package/dist/errors.d.ts +8 -0
  250. package/dist/errors.js +12 -1
  251. package/dist/eventingfunctionmanager.d.ts +42 -0
  252. package/dist/eventingfunctionmanager.js +172 -100
  253. package/dist/logger.d.ts +192 -0
  254. package/dist/logger.js +213 -0
  255. package/dist/loggingmeter.d.ts +120 -0
  256. package/dist/loggingmeter.js +226 -0
  257. package/dist/metrics.d.ts +33 -0
  258. package/dist/metrics.js +5 -0
  259. package/dist/observability.d.ts +60 -0
  260. package/dist/observability.js +86 -0
  261. package/dist/observabilityhandler.d.ts +176 -0
  262. package/dist/observabilityhandler.js +733 -0
  263. package/dist/observabilitytypes.d.ts +320 -0
  264. package/dist/observabilitytypes.js +362 -0
  265. package/dist/observabilityutilities.d.ts +60 -0
  266. package/dist/observabilityutilities.js +175 -0
  267. package/dist/otelmeter.d.ts +51 -0
  268. package/dist/otelmeter.js +100 -0
  269. package/dist/oteltracer.d.ts +69 -0
  270. package/dist/oteltracer.js +141 -0
  271. package/dist/queryexecutor.d.ts +16 -0
  272. package/dist/queryexecutor.js +128 -86
  273. package/dist/queryindexmanager.d.ts +29 -0
  274. package/dist/queryindexmanager.js +277 -150
  275. package/dist/querytypes.d.ts +5 -0
  276. package/dist/scope.js +2 -2
  277. package/dist/scopeeventingfunctionmanager.d.ts +5 -0
  278. package/dist/scopeeventingfunctionmanager.js +217 -119
  279. package/dist/scopesearchindexmanager.d.ts +5 -0
  280. package/dist/scopesearchindexmanager.js +295 -166
  281. package/dist/sdspecs.js +6 -1
  282. package/dist/searchexecutor.d.ts +15 -0
  283. package/dist/searchexecutor.js +54 -26
  284. package/dist/searchindexmanager.d.ts +54 -0
  285. package/dist/searchindexmanager.js +235 -142
  286. package/dist/searchtypes.d.ts +5 -0
  287. package/dist/thresholdlogging.d.ts +301 -0
  288. package/dist/thresholdlogging.js +657 -0
  289. package/dist/tracing.d.ts +55 -0
  290. package/dist/tracing.js +2 -0
  291. package/dist/transactions.js +1 -1
  292. package/dist/transcoders.js +1 -1
  293. package/dist/usermanager.d.ts +46 -0
  294. package/dist/usermanager.js +199 -118
  295. package/dist/utilities.d.ts +4 -0
  296. package/dist/utilities.js +11 -1
  297. package/dist/utilities_internal.js +0 -1
  298. package/dist/version.d.ts +2 -0
  299. package/dist/version.js +7 -0
  300. package/dist/viewexecutor.d.ts +15 -0
  301. package/dist/viewexecutor.js +54 -29
  302. package/dist/viewindexmanager.d.ts +30 -0
  303. package/dist/viewindexmanager.js +129 -100
  304. package/dist/viewtypes.d.ts +5 -0
  305. package/package.json +32 -18
  306. package/scripts/buildPrebuild.js +2 -0
  307. package/scripts/install.js +2 -0
  308. package/scripts/prebuilds.js +7 -8
  309. package/scripts/prune.js +2 -0
  310. package/scripts/updateVersion.js +26 -0
  311. package/src/connection.cpp +79 -98
  312. package/src/connection.hpp +46 -38
  313. package/src/connection_autogen.cpp +1236 -292
  314. package/src/jstocbpp_autogen.hpp +1117 -313
  315. package/src/jstocbpp_basic.hpp +73 -0
  316. package/src/jstocbpp_defs.hpp +37 -9
  317. package/src/jstocbpp_errors.hpp +37 -11
  318. package/tools/gen-bindings-js.js +100 -22
  319. package/tools/gen-bindings-json.py +40 -6
  320. package/src/transcoder.hpp +0 -96
@@ -1,5 +1,7 @@
1
1
  import { CppTopologyCollectionsManifestCollection, CppTopologyCollectionsManifestScope } from './binding';
2
2
  import { Bucket } from './bucket';
3
+ import { ObservabilityInstruments } from './observabilitytypes';
4
+ import { RequestSpan } from './tracing';
3
5
  import { NodeCallback } from './utilities';
4
6
  /**
5
7
  * Provides options for configuring a collection.
@@ -136,6 +138,10 @@ export interface CreateCollectionOptions {
136
138
  * The timeout for this operation, represented in milliseconds.
137
139
  */
138
140
  timeout?: number;
141
+ /**
142
+ * Specifies the parent span for this specific operation.
143
+ */
144
+ parentSpan?: RequestSpan;
139
145
  }
140
146
  /**
141
147
  * @category Management
@@ -145,6 +151,10 @@ export interface GetAllScopesOptions {
145
151
  * The timeout for this operation, represented in milliseconds.
146
152
  */
147
153
  timeout?: number;
154
+ /**
155
+ * Specifies the parent span for this specific operation.
156
+ */
157
+ parentSpan?: RequestSpan;
148
158
  }
149
159
  /**
150
160
  * @category Management
@@ -154,6 +164,10 @@ export interface DropCollectionOptions {
154
164
  * The timeout for this operation, represented in milliseconds.
155
165
  */
156
166
  timeout?: number;
167
+ /**
168
+ * Specifies the parent span for this specific operation.
169
+ */
170
+ parentSpan?: RequestSpan;
157
171
  }
158
172
  /**
159
173
  * @category Management
@@ -163,6 +177,10 @@ export interface CreateScopeOptions {
163
177
  * The timeout for this operation, represented in milliseconds.
164
178
  */
165
179
  timeout?: number;
180
+ /**
181
+ * Specifies the parent span for this specific operation.
182
+ */
183
+ parentSpan?: RequestSpan;
166
184
  }
167
185
  /**
168
186
  * @category Management
@@ -172,6 +190,10 @@ export interface DropScopeOptions {
172
190
  * The timeout for this operation, represented in milliseconds.
173
191
  */
174
192
  timeout?: number;
193
+ /**
194
+ * Specifies the parent span for this specific operation.
195
+ */
196
+ parentSpan?: RequestSpan;
175
197
  }
176
198
  /**
177
199
  * @category Management
@@ -181,7 +203,15 @@ export interface UpdateCollectionOptions {
181
203
  * The timeout for this operation, represented in milliseconds.
182
204
  */
183
205
  timeout?: number;
206
+ /**
207
+ * Specifies the parent span for this specific operation.
208
+ */
209
+ parentSpan?: RequestSpan;
184
210
  }
211
+ /**
212
+ * @internal
213
+ */
214
+ export declare function isOptions<T>(obj: any, expectedKeys: string[]): obj is T;
185
215
  /**
186
216
  * CollectionManager allows the management of collections within a Bucket.
187
217
  *
@@ -194,6 +224,10 @@ export declare class CollectionManager {
194
224
  */
195
225
  constructor(bucket: Bucket);
196
226
  private get _cluster();
227
+ /**
228
+ * @internal
229
+ */
230
+ get observabilityInstruments(): ObservabilityInstruments;
197
231
  /**
198
232
  * Returns all configured scopes along with their collections.
199
233
  *
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CollectionManager = exports.ScopeSpec = exports.CollectionSpec = void 0;
4
- const bindingutilities_1 = require("./bindingutilities");
3
+ exports.CollectionManager = exports.isOptions = exports.ScopeSpec = exports.CollectionSpec = void 0;
4
+ const observability_1 = require("./observability");
5
+ const observabilityhandler_1 = require("./observabilityhandler");
6
+ const observabilitytypes_1 = require("./observabilitytypes");
5
7
  const utilities_1 = require("./utilities");
6
8
  /**
7
9
  * Contains information about a collection.
@@ -63,6 +65,17 @@ class ScopeSpec {
63
65
  }
64
66
  }
65
67
  exports.ScopeSpec = ScopeSpec;
68
+ const OPTIONS_KEYS = ['timeout', 'parentSpan'];
69
+ /**
70
+ * @internal
71
+ */
72
+ function isOptions(obj, expectedKeys) {
73
+ if (!obj || typeof obj !== 'object')
74
+ return false;
75
+ // Check if at least one key in the object exists in our expected list
76
+ return Object.keys(obj).some((key) => expectedKeys.includes(key));
77
+ }
78
+ exports.isOptions = isOptions;
66
79
  /**
67
80
  * CollectionManager allows the management of collections within a Bucket.
68
81
  *
@@ -78,6 +91,12 @@ class CollectionManager {
78
91
  get _cluster() {
79
92
  return this._bucket.cluster;
80
93
  }
94
+ /**
95
+ * @internal
96
+ */
97
+ get observabilityInstruments() {
98
+ return this._bucket.cluster.observabilityInstruments;
99
+ }
81
100
  /**
82
101
  * Returns all configured scopes along with their collections.
83
102
  *
@@ -92,21 +111,28 @@ class CollectionManager {
92
111
  if (!options) {
93
112
  options = {};
94
113
  }
95
- const bucketName = this._bucket.name;
96
- const timeout = options.timeout || this._cluster.managementTimeout;
97
- return utilities_1.PromiseHelper.wrap((wrapCallback) => {
98
- this._cluster.conn.managementScopeGetAll({
99
- bucket_name: bucketName,
100
- timeout: timeout,
101
- }, (cppErr, resp) => {
102
- const err = (0, bindingutilities_1.errorFromCpp)(cppErr);
114
+ const obsReqHandler = new observabilityhandler_1.ObservableRequestHandler(observabilitytypes_1.CollectionMgmtOp.ScopeGetAll, this.observabilityInstruments, options === null || options === void 0 ? void 0 : options.parentSpan);
115
+ obsReqHandler.setRequestHttpAttributes({ bucketName: this._bucket.name });
116
+ try {
117
+ const bucketName = this._bucket.name;
118
+ const timeout = options.timeout || this._cluster.managementTimeout;
119
+ return utilities_1.PromiseHelper.wrapAsync(async () => {
120
+ const [err, resp] = await (0, observability_1.wrapObservableBindingCall)(this._cluster.conn.managementScopeGetAll.bind(this._cluster.conn), {
121
+ bucket_name: bucketName,
122
+ timeout: timeout,
123
+ }, obsReqHandler);
103
124
  if (err) {
104
- return wrapCallback(err, null);
125
+ obsReqHandler.endWithError(err);
126
+ throw err;
105
127
  }
106
- const scopes = resp.manifest.scopes.map((scopeData) => ScopeSpec._fromCppData(scopeData));
107
- wrapCallback(null, scopes);
108
- });
109
- }, callback);
128
+ obsReqHandler.end();
129
+ return resp.manifest.scopes.map((scopeData) => ScopeSpec._fromCppData(scopeData));
130
+ }, callback);
131
+ }
132
+ catch (err) {
133
+ obsReqHandler.endWithError(err);
134
+ throw err;
135
+ }
110
136
  }
111
137
  /**
112
138
  * @internal
@@ -142,32 +168,47 @@ class CollectionManager {
142
168
  callback = arguments[3];
143
169
  options = undefined;
144
170
  }
171
+ if (isOptions(settings, OPTIONS_KEYS)) {
172
+ options = settings;
173
+ settings = undefined;
174
+ }
145
175
  if (!options) {
146
176
  options = {};
147
177
  }
148
178
  if (!settings) {
149
179
  settings = {};
150
180
  }
151
- const bucketName = this._bucket.name;
152
- const timeout = options.timeout || this._cluster.managementTimeout;
153
- const maxExpiry = settings === null || settings === void 0 ? void 0 : settings.maxExpiry;
154
- const history = settings === null || settings === void 0 ? void 0 : settings.history;
155
- return utilities_1.PromiseHelper.wrap((wrapCallback) => {
156
- this._cluster.conn.managementCollectionCreate({
157
- bucket_name: bucketName,
158
- scope_name: scopeName,
159
- collection_name: collectionName,
160
- max_expiry: maxExpiry,
161
- history: history,
162
- timeout: timeout,
163
- }, (cppErr) => {
164
- const err = (0, bindingutilities_1.errorFromCpp)(cppErr);
181
+ const obsReqHandler = new observabilityhandler_1.ObservableRequestHandler(observabilitytypes_1.CollectionMgmtOp.CollectionCreate, this.observabilityInstruments, options === null || options === void 0 ? void 0 : options.parentSpan);
182
+ obsReqHandler.setRequestHttpAttributes({
183
+ bucketName: this._bucket.name,
184
+ scopeName: scopeName,
185
+ collectionName: collectionName,
186
+ });
187
+ try {
188
+ const bucketName = this._bucket.name;
189
+ const timeout = options.timeout || this._cluster.managementTimeout;
190
+ const maxExpiry = settings === null || settings === void 0 ? void 0 : settings.maxExpiry;
191
+ const history = settings === null || settings === void 0 ? void 0 : settings.history;
192
+ return utilities_1.PromiseHelper.wrapAsync(async () => {
193
+ const [err, _] = await (0, observability_1.wrapObservableBindingCall)(this._cluster.conn.managementCollectionCreate.bind(this._cluster.conn), {
194
+ bucket_name: bucketName,
195
+ scope_name: scopeName,
196
+ collection_name: collectionName,
197
+ max_expiry: maxExpiry,
198
+ history: history,
199
+ timeout: timeout,
200
+ }, obsReqHandler);
165
201
  if (err) {
166
- return wrapCallback(err, null);
202
+ obsReqHandler.endWithError(err);
203
+ throw err;
167
204
  }
168
- wrapCallback(err);
169
- });
170
- }, callback);
205
+ obsReqHandler.end();
206
+ }, callback);
207
+ }
208
+ catch (err) {
209
+ obsReqHandler.endWithError(err);
210
+ throw err;
211
+ }
171
212
  }
172
213
  /**
173
214
  * Drops a collection from a scope.
@@ -185,22 +226,33 @@ class CollectionManager {
185
226
  if (!options) {
186
227
  options = {};
187
228
  }
188
- const bucketName = this._bucket.name;
189
- const timeout = options.timeout || this._cluster.managementTimeout;
190
- return utilities_1.PromiseHelper.wrap((wrapCallback) => {
191
- this._cluster.conn.managementCollectionDrop({
192
- bucket_name: bucketName,
193
- scope_name: scopeName,
194
- collection_name: collectionName,
195
- timeout: timeout,
196
- }, (cppErr) => {
197
- const err = (0, bindingutilities_1.errorFromCpp)(cppErr);
229
+ const obsReqHandler = new observabilityhandler_1.ObservableRequestHandler(observabilitytypes_1.CollectionMgmtOp.CollectionDrop, this.observabilityInstruments, options === null || options === void 0 ? void 0 : options.parentSpan);
230
+ obsReqHandler.setRequestHttpAttributes({
231
+ bucketName: this._bucket.name,
232
+ scopeName: scopeName,
233
+ collectionName: collectionName,
234
+ });
235
+ try {
236
+ const bucketName = this._bucket.name;
237
+ const timeout = options.timeout || this._cluster.managementTimeout;
238
+ return utilities_1.PromiseHelper.wrapAsync(async () => {
239
+ const [err, _] = await (0, observability_1.wrapObservableBindingCall)(this._cluster.conn.managementCollectionDrop.bind(this._cluster.conn), {
240
+ bucket_name: bucketName,
241
+ scope_name: scopeName,
242
+ collection_name: collectionName,
243
+ timeout: timeout,
244
+ }, obsReqHandler);
198
245
  if (err) {
199
- return wrapCallback(err, null);
246
+ obsReqHandler.endWithError(err);
247
+ throw err;
200
248
  }
201
- wrapCallback(err);
202
- });
203
- }, callback);
249
+ obsReqHandler.end();
250
+ }, callback);
251
+ }
252
+ catch (err) {
253
+ obsReqHandler.endWithError(err);
254
+ throw err;
255
+ }
204
256
  }
205
257
  /**
206
258
  * Updates a collection in a scope.
@@ -219,24 +271,35 @@ class CollectionManager {
219
271
  if (!options) {
220
272
  options = {};
221
273
  }
222
- const bucketName = this._bucket.name;
223
- const timeout = options.timeout || this._cluster.managementTimeout;
224
- return utilities_1.PromiseHelper.wrap((wrapCallback) => {
225
- this._cluster.conn.managementCollectionUpdate({
226
- bucket_name: bucketName,
227
- scope_name: scopeName,
228
- collection_name: collectionName,
229
- max_expiry: settings.maxExpiry,
230
- history: settings.history,
231
- timeout: timeout,
232
- }, (cppErr) => {
233
- const err = (0, bindingutilities_1.errorFromCpp)(cppErr);
274
+ const obsReqHandler = new observabilityhandler_1.ObservableRequestHandler(observabilitytypes_1.CollectionMgmtOp.CollectionUpdate, this.observabilityInstruments, options === null || options === void 0 ? void 0 : options.parentSpan);
275
+ obsReqHandler.setRequestHttpAttributes({
276
+ bucketName: this._bucket.name,
277
+ scopeName: scopeName,
278
+ collectionName: collectionName,
279
+ });
280
+ try {
281
+ const bucketName = this._bucket.name;
282
+ const timeout = options.timeout || this._cluster.managementTimeout;
283
+ return utilities_1.PromiseHelper.wrapAsync(async () => {
284
+ const [err, _] = await (0, observability_1.wrapObservableBindingCall)(this._cluster.conn.managementCollectionUpdate.bind(this._cluster.conn), {
285
+ bucket_name: bucketName,
286
+ scope_name: scopeName,
287
+ collection_name: collectionName,
288
+ max_expiry: settings.maxExpiry,
289
+ history: settings.history,
290
+ timeout: timeout,
291
+ }, obsReqHandler);
234
292
  if (err) {
235
- return wrapCallback(err, null);
293
+ obsReqHandler.endWithError(err);
294
+ throw err;
236
295
  }
237
- wrapCallback(err);
238
- });
239
- }, callback);
296
+ obsReqHandler.end();
297
+ }, callback);
298
+ }
299
+ catch (err) {
300
+ obsReqHandler.endWithError(err);
301
+ throw err;
302
+ }
240
303
  }
241
304
  /**
242
305
  * Creates a new scope.
@@ -253,21 +316,31 @@ class CollectionManager {
253
316
  if (!options) {
254
317
  options = {};
255
318
  }
256
- const bucketName = this._bucket.name;
257
- const timeout = options.timeout || this._cluster.managementTimeout;
258
- return utilities_1.PromiseHelper.wrap((wrapCallback) => {
259
- this._cluster.conn.managementScopeCreate({
260
- bucket_name: bucketName,
261
- scope_name: scopeName,
262
- timeout: timeout,
263
- }, (cppErr) => {
264
- const err = (0, bindingutilities_1.errorFromCpp)(cppErr);
319
+ const obsReqHandler = new observabilityhandler_1.ObservableRequestHandler(observabilitytypes_1.CollectionMgmtOp.ScopeCreate, this.observabilityInstruments, options === null || options === void 0 ? void 0 : options.parentSpan);
320
+ obsReqHandler.setRequestHttpAttributes({
321
+ bucketName: this._bucket.name,
322
+ scopeName: scopeName,
323
+ });
324
+ try {
325
+ const bucketName = this._bucket.name;
326
+ const timeout = options.timeout || this._cluster.managementTimeout;
327
+ return utilities_1.PromiseHelper.wrapAsync(async () => {
328
+ const [err, _] = await (0, observability_1.wrapObservableBindingCall)(this._cluster.conn.managementScopeCreate.bind(this._cluster.conn), {
329
+ bucket_name: bucketName,
330
+ scope_name: scopeName,
331
+ timeout: timeout,
332
+ }, obsReqHandler);
265
333
  if (err) {
266
- return wrapCallback(err, null);
334
+ obsReqHandler.endWithError(err);
335
+ throw err;
267
336
  }
268
- wrapCallback(err);
269
- });
270
- }, callback);
337
+ obsReqHandler.end();
338
+ }, callback);
339
+ }
340
+ catch (err) {
341
+ obsReqHandler.endWithError(err);
342
+ throw err;
343
+ }
271
344
  }
272
345
  /**
273
346
  * Drops a scope.
@@ -284,21 +357,31 @@ class CollectionManager {
284
357
  if (!options) {
285
358
  options = {};
286
359
  }
287
- const bucketName = this._bucket.name;
288
- const timeout = options.timeout || this._cluster.managementTimeout;
289
- return utilities_1.PromiseHelper.wrap((wrapCallback) => {
290
- this._cluster.conn.managementScopeDrop({
291
- bucket_name: bucketName,
292
- scope_name: scopeName,
293
- timeout: timeout,
294
- }, (cppErr) => {
295
- const err = (0, bindingutilities_1.errorFromCpp)(cppErr);
360
+ const obsReqHandler = new observabilityhandler_1.ObservableRequestHandler(observabilitytypes_1.CollectionMgmtOp.ScopeDrop, this.observabilityInstruments, options === null || options === void 0 ? void 0 : options.parentSpan);
361
+ obsReqHandler.setRequestHttpAttributes({
362
+ bucketName: this._bucket.name,
363
+ scopeName: scopeName,
364
+ });
365
+ try {
366
+ const bucketName = this._bucket.name;
367
+ const timeout = options.timeout || this._cluster.managementTimeout;
368
+ return utilities_1.PromiseHelper.wrapAsync(async () => {
369
+ const [err, _] = await (0, observability_1.wrapObservableBindingCall)(this._cluster.conn.managementScopeDrop.bind(this._cluster.conn), {
370
+ bucket_name: bucketName,
371
+ scope_name: scopeName,
372
+ timeout: timeout,
373
+ }, obsReqHandler);
296
374
  if (err) {
297
- return wrapCallback(err, null);
375
+ obsReqHandler.endWithError(err);
376
+ throw err;
298
377
  }
299
- wrapCallback(err);
300
- });
301
- }, callback);
378
+ obsReqHandler.end();
379
+ }, callback);
380
+ }
381
+ catch (err) {
382
+ obsReqHandler.endWithError(err);
383
+ throw err;
384
+ }
302
385
  }
303
386
  }
304
387
  exports.CollectionManager = CollectionManager;
@@ -56,7 +56,11 @@ export * from './errorcontexts';
56
56
  export * from './errors';
57
57
  export * from './eventingfunctionmanager';
58
58
  export * from './generaltypes';
59
+ export * from './logger';
60
+ export * from './metrics';
59
61
  export * from './mutationstate';
62
+ export * from './oteltracer';
63
+ export * from './otelmeter';
60
64
  export * from './queryindexmanager';
61
65
  export * from './querytypes';
62
66
  export * from './rangeScan';
@@ -70,6 +74,7 @@ export * from './searchquery';
70
74
  export * from './searchsort';
71
75
  export * from './searchtypes';
72
76
  export * from './streamablepromises';
77
+ export * from './tracing';
73
78
  export * from './transactions';
74
79
  export * from './transcoders';
75
80
  export * from './usermanager';
package/dist/couchbase.js CHANGED
@@ -85,7 +85,11 @@ __exportStar(require("./errorcontexts"), exports);
85
85
  __exportStar(require("./errors"), exports);
86
86
  __exportStar(require("./eventingfunctionmanager"), exports);
87
87
  __exportStar(require("./generaltypes"), exports);
88
+ __exportStar(require("./logger"), exports);
89
+ __exportStar(require("./metrics"), exports);
88
90
  __exportStar(require("./mutationstate"), exports);
91
+ __exportStar(require("./oteltracer"), exports);
92
+ __exportStar(require("./otelmeter"), exports);
89
93
  __exportStar(require("./queryindexmanager"), exports);
90
94
  __exportStar(require("./querytypes"), exports);
91
95
  __exportStar(require("./rangeScan"), exports);
@@ -99,6 +103,7 @@ __exportStar(require("./searchquery"), exports);
99
103
  __exportStar(require("./searchsort"), exports);
100
104
  __exportStar(require("./searchtypes"), exports);
101
105
  __exportStar(require("./streamablepromises"), exports);
106
+ __exportStar(require("./tracing"), exports);
102
107
  __exportStar(require("./transactions"), exports);
103
108
  __exportStar(require("./transcoders"), exports);
104
109
  __exportStar(require("./usermanager"), exports);