couchbase 4.4.6-dev.1 → 4.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (139) hide show
  1. package/deps/couchbase-cxx-cache/mozilla-ca-bundle.crt +3 -165
  2. package/deps/couchbase-cxx-cache/mozilla-ca-bundle.sha256 +1 -1
  3. package/deps/couchbase-cxx-client/CMakeLists.txt +12 -1
  4. package/deps/couchbase-cxx-client/README.md +2 -2
  5. package/deps/couchbase-cxx-client/cmake/Profiler.cmake +15 -0
  6. package/deps/couchbase-cxx-client/core/app_telemetry_address.cxx +55 -0
  7. package/deps/couchbase-cxx-client/core/app_telemetry_address.hxx +39 -0
  8. package/deps/couchbase-cxx-client/core/app_telemetry_meter.cxx +753 -0
  9. package/deps/couchbase-cxx-client/core/app_telemetry_meter.hxx +198 -0
  10. package/deps/couchbase-cxx-client/core/app_telemetry_reporter.cxx +895 -0
  11. package/deps/couchbase-cxx-client/core/app_telemetry_reporter.hxx +59 -0
  12. package/deps/couchbase-cxx-client/core/bucket.cxx +77 -35
  13. package/deps/couchbase-cxx-client/core/bucket.hxx +17 -10
  14. package/deps/couchbase-cxx-client/core/cluster.cxx +54 -16
  15. package/deps/couchbase-cxx-client/core/cluster_credentials.cxx +27 -0
  16. package/deps/couchbase-cxx-client/core/cluster_credentials.hxx +36 -0
  17. package/deps/couchbase-cxx-client/core/cluster_options.hxx +12 -0
  18. package/deps/couchbase-cxx-client/core/collections_component.cxx +7 -5
  19. package/deps/couchbase-cxx-client/core/http_component.cxx +6 -0
  20. package/deps/couchbase-cxx-client/core/impl/bucket_manager.cxx +2 -0
  21. package/deps/couchbase-cxx-client/core/impl/cluster.cxx +9 -0
  22. package/deps/couchbase-cxx-client/core/impl/collection.cxx +2 -0
  23. package/deps/couchbase-cxx-client/core/impl/error.cxx +1 -0
  24. package/deps/couchbase-cxx-client/core/impl/logger.cxx +51 -0
  25. package/deps/couchbase-cxx-client/core/impl/replica_utils.cxx +1 -1
  26. package/deps/couchbase-cxx-client/core/impl/transaction_get_multi_replicas_from_preferred_server_group_spec.cxx +32 -0
  27. package/deps/couchbase-cxx-client/core/impl/transaction_get_multi_spec.cxx +30 -0
  28. package/deps/couchbase-cxx-client/core/impl/transaction_op_error_category.cxx +2 -0
  29. package/deps/couchbase-cxx-client/core/io/config_tracker.cxx +6 -6
  30. package/deps/couchbase-cxx-client/core/io/http_command.hxx +35 -11
  31. package/deps/couchbase-cxx-client/core/io/http_session.cxx +10 -0
  32. package/deps/couchbase-cxx-client/core/io/http_session.hxx +4 -0
  33. package/deps/couchbase-cxx-client/core/io/http_session_manager.hxx +83 -34
  34. package/deps/couchbase-cxx-client/core/io/mcbp_command.hxx +41 -2
  35. package/deps/couchbase-cxx-client/core/io/mcbp_session.cxx +52 -19
  36. package/deps/couchbase-cxx-client/core/io/mcbp_session.hxx +3 -0
  37. package/deps/couchbase-cxx-client/core/logger/logger.cxx +46 -0
  38. package/deps/couchbase-cxx-client/core/logger/logger.hxx +41 -1
  39. package/deps/couchbase-cxx-client/core/management/bucket_settings.hxx +1 -0
  40. package/deps/couchbase-cxx-client/core/management/bucket_settings_json.hxx +4 -0
  41. package/deps/couchbase-cxx-client/core/meta/features.hxx +32 -0
  42. package/deps/couchbase-cxx-client/core/operations/document_analytics.cxx +9 -9
  43. package/deps/couchbase-cxx-client/core/operations/document_get_all_replicas.hxx +10 -2
  44. package/deps/couchbase-cxx-client/core/operations/document_lookup_in.cxx +4 -0
  45. package/deps/couchbase-cxx-client/core/operations/document_lookup_in_all_replicas.hxx +14 -2
  46. package/deps/couchbase-cxx-client/core/operations/document_lookup_in_any_replica.hxx +4 -0
  47. package/deps/couchbase-cxx-client/core/operations/document_mutate_in.cxx +4 -0
  48. package/deps/couchbase-cxx-client/core/operations/document_mutate_in.hxx +1 -0
  49. package/deps/couchbase-cxx-client/core/operations/document_query.cxx +12 -10
  50. package/deps/couchbase-cxx-client/core/operations/http_noop.cxx +1 -0
  51. package/deps/couchbase-cxx-client/core/operations/management/bucket_create.cxx +3 -0
  52. package/deps/couchbase-cxx-client/core/operations/management/bucket_update.cxx +3 -0
  53. package/deps/couchbase-cxx-client/core/origin.cxx +0 -5
  54. package/deps/couchbase-cxx-client/core/origin.hxx +2 -11
  55. package/deps/couchbase-cxx-client/core/platform/random.cc +6 -3
  56. package/deps/couchbase-cxx-client/core/platform/random.h +2 -2
  57. package/deps/couchbase-cxx-client/core/protocol/cmd_mutate_in.hxx +9 -0
  58. package/deps/couchbase-cxx-client/core/timeout_defaults.hxx +4 -0
  59. package/deps/couchbase-cxx-client/core/topology/configuration.cxx +10 -13
  60. package/deps/couchbase-cxx-client/core/topology/configuration.hxx +14 -15
  61. package/deps/couchbase-cxx-client/core/topology/configuration_json.hxx +6 -0
  62. package/deps/couchbase-cxx-client/core/transactions/async_attempt_context.hxx +22 -2
  63. package/deps/couchbase-cxx-client/core/transactions/attempt_context.hxx +25 -7
  64. package/deps/couchbase-cxx-client/core/transactions/attempt_context_impl.cxx +688 -238
  65. package/deps/couchbase-cxx-client/core/transactions/attempt_context_impl.hxx +91 -12
  66. package/deps/couchbase-cxx-client/core/transactions/exceptions.cxx +5 -0
  67. package/deps/couchbase-cxx-client/core/transactions/exceptions.hxx +20 -0
  68. package/deps/couchbase-cxx-client/core/transactions/exceptions_fmt.hxx +3 -0
  69. package/deps/couchbase-cxx-client/core/transactions/forward_compat.cxx +71 -6
  70. package/deps/couchbase-cxx-client/core/transactions/forward_compat.hxx +45 -59
  71. package/deps/couchbase-cxx-client/core/transactions/get_multi_orchestrator.cxx +616 -0
  72. package/deps/couchbase-cxx-client/core/transactions/get_multi_orchestrator.hxx +61 -0
  73. package/deps/couchbase-cxx-client/core/transactions/internal/doc_record.cxx +8 -0
  74. package/deps/couchbase-cxx-client/core/transactions/internal/doc_record.hxx +16 -5
  75. package/deps/couchbase-cxx-client/core/transactions/internal/exceptions_internal.hxx +12 -0
  76. package/deps/couchbase-cxx-client/core/transactions/internal/transaction_context.hxx +13 -0
  77. package/deps/couchbase-cxx-client/core/transactions/internal/transaction_fields.hxx +1 -0
  78. package/deps/couchbase-cxx-client/core/transactions/staged_mutation.cxx +277 -96
  79. package/deps/couchbase-cxx-client/core/transactions/staged_mutation.hxx +28 -76
  80. package/deps/couchbase-cxx-client/core/transactions/transaction_context.cxx +33 -0
  81. package/deps/couchbase-cxx-client/core/transactions/transaction_get_multi_mode.hxx +28 -0
  82. package/deps/couchbase-cxx-client/core/transactions/transaction_get_multi_replicas_from_preferred_server_group_mode.hxx +27 -0
  83. package/deps/couchbase-cxx-client/core/transactions/transaction_get_multi_replicas_from_preferred_server_group_result.hxx +71 -0
  84. package/deps/couchbase-cxx-client/core/transactions/transaction_get_multi_result.hxx +66 -0
  85. package/deps/couchbase-cxx-client/core/transactions/transaction_links.hxx +10 -0
  86. package/deps/couchbase-cxx-client/core/transactions/transactions.cxx +8 -3
  87. package/deps/couchbase-cxx-client/core/utils/connection_string.cxx +4 -0
  88. package/deps/couchbase-cxx-client/core/utils/url_codec.cxx +26 -0
  89. package/deps/couchbase-cxx-client/core/utils/url_codec.hxx +11 -0
  90. package/deps/couchbase-cxx-client/core/websocket_codec.cxx +647 -0
  91. package/deps/couchbase-cxx-client/core/websocket_codec.hxx +77 -0
  92. package/deps/couchbase-cxx-client/couchbase/analytics_options.hxx +70 -6
  93. package/deps/couchbase-cxx-client/couchbase/application_telemetry_options.hxx +124 -0
  94. package/deps/couchbase-cxx-client/couchbase/cluster_options.hxx +17 -0
  95. package/deps/couchbase-cxx-client/couchbase/error_codes.hxx +1 -0
  96. package/deps/couchbase-cxx-client/couchbase/logger.hxx +16 -0
  97. package/deps/couchbase-cxx-client/couchbase/management/bucket_settings.hxx +1 -0
  98. package/deps/couchbase-cxx-client/couchbase/query_options.hxx +70 -6
  99. package/deps/couchbase-cxx-client/couchbase/transactions/async_attempt_context.hxx +29 -5
  100. package/deps/couchbase-cxx-client/couchbase/transactions/attempt_context.hxx +24 -7
  101. package/deps/couchbase-cxx-client/couchbase/transactions/transaction_get_multi_mode.hxx +47 -0
  102. package/deps/couchbase-cxx-client/couchbase/transactions/transaction_get_multi_options.hxx +44 -0
  103. package/deps/couchbase-cxx-client/couchbase/transactions/transaction_get_multi_replicas_from_preferred_server_group_mode.hxx +46 -0
  104. package/deps/couchbase-cxx-client/couchbase/transactions/transaction_get_multi_replicas_from_preferred_server_group_options.hxx +48 -0
  105. package/deps/couchbase-cxx-client/couchbase/transactions/transaction_get_multi_replicas_from_preferred_server_group_result.hxx +109 -0
  106. package/deps/couchbase-cxx-client/couchbase/transactions/transaction_get_multi_replicas_from_preferred_server_group_spec.hxx +47 -0
  107. package/deps/couchbase-cxx-client/couchbase/transactions/transaction_get_multi_result.hxx +102 -0
  108. package/deps/couchbase-cxx-client/couchbase/transactions/transaction_get_multi_spec.hxx +45 -0
  109. package/dist/analyticsindexmanager.d.ts +1 -0
  110. package/dist/binarycollection.d.ts +1 -0
  111. package/dist/binding.d.ts +85 -38
  112. package/dist/binding.js +14 -7
  113. package/dist/bindingutilities.d.ts +16 -4
  114. package/dist/bindingutilities.js +248 -43
  115. package/dist/cluster.d.ts +39 -0
  116. package/dist/cluster.js +21 -3
  117. package/dist/collection.d.ts +20 -1
  118. package/dist/collection.js +13 -0
  119. package/dist/errorcontexts.d.ts +24 -0
  120. package/dist/errorcontexts.js +12 -6
  121. package/dist/generaltypes.d.ts +16 -0
  122. package/dist/generaltypes.js +18 -1
  123. package/dist/httpexecutor.d.ts +1 -2
  124. package/dist/httpexecutor.js +0 -9
  125. package/dist/streamablepromises.d.ts +25 -7
  126. package/dist/streamablepromises.js +32 -7
  127. package/dist/transactions.d.ts +239 -1
  128. package/dist/transactions.js +318 -1
  129. package/dist/transcoders.d.ts +1 -0
  130. package/dist/utilities.d.ts +1 -0
  131. package/package.json +24 -24
  132. package/src/connection.cpp +34 -4
  133. package/src/constants.cpp +124 -0
  134. package/src/jstocbpp_autogen.hpp +22 -8
  135. package/src/jstocbpp_transactions.hpp +83 -7
  136. package/src/transaction.cpp +101 -0
  137. package/src/transaction.hpp +5 -0
  138. package/tools/gen-bindings-js.js +2 -1
  139. package/tools/gen-bindings-json.py +28 -3
@@ -1,14 +1,14 @@
1
1
  ##
2
2
  ## Bundle of CA Root Certificates
3
3
  ##
4
- ## Certificate data from Mozilla as of: Tue Feb 25 04:12:03 2025 GMT
4
+ ## Certificate data from Mozilla as of: Tue May 20 03:12:02 2025 GMT
5
5
  ##
6
6
  ## Find updated versions here: https://curl.se/docs/caextract.html
7
7
  ##
8
8
  ## This is a bundle of X.509 certificates of public Certificate Authorities
9
9
  ## (CA). These were automatically extracted from Mozilla's root certificates
10
10
  ## file (certdata.txt). This file can be found in the mozilla source tree:
11
- ## https://hg.mozilla.org/releases/mozilla-release/raw-file/default/security/nss/lib/ckfw/builtins/certdata.txt
11
+ ## https://raw.githubusercontent.com/mozilla-firefox/firefox/refs/heads/release/security/nss/lib/ckfw/builtins/certdata.txt
12
12
  ##
13
13
  ## It contains the certificates in PEM format and therefore
14
14
  ## can be directly used with curl / libcurl / php_curl, or with
@@ -16,76 +16,10 @@
16
16
  ## Just configure this file as the SSLCACertificateFile.
17
17
  ##
18
18
  ## Conversion done with mk-ca-bundle.pl version 1.29.
19
- ## SHA256: 620fd89c02acb0019f1899dab7907db5d20735904f5a9a0d3a8771a5857ac482
19
+ ## SHA256: 8944ec6b572b577daee4fc681a425881f841ec2660e4cb5f0eee727f84620697
20
20
  ##
21
21
 
22
22
 
23
- GlobalSign Root CA
24
- ==================
25
- -----BEGIN CERTIFICATE-----
26
- MIIDdTCCAl2gAwIBAgILBAAAAAABFUtaw5QwDQYJKoZIhvcNAQEFBQAwVzELMAkGA1UEBhMCQkUx
27
- GTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExEDAOBgNVBAsTB1Jvb3QgQ0ExGzAZBgNVBAMTEkds
28
- b2JhbFNpZ24gUm9vdCBDQTAeFw05ODA5MDExMjAwMDBaFw0yODAxMjgxMjAwMDBaMFcxCzAJBgNV
29
- BAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMRAwDgYDVQQLEwdSb290IENBMRswGQYD
30
- VQQDExJHbG9iYWxTaWduIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDa
31
- DuaZjc6j40+Kfvvxi4Mla+pIH/EqsLmVEQS98GPR4mdmzxzdzxtIK+6NiY6arymAZavpxy0Sy6sc
32
- THAHoT0KMM0VjU/43dSMUBUc71DuxC73/OlS8pF94G3VNTCOXkNz8kHp1Wrjsok6Vjk4bwY8iGlb
33
- Kk3Fp1S4bInMm/k8yuX9ifUSPJJ4ltbcdG6TRGHRjcdGsnUOhugZitVtbNV4FpWi6cgKOOvyJBNP
34
- c1STE4U6G7weNLWLBYy5d4ux2x8gkasJU26Qzns3dLlwR5EiUWMWea6xrkEmCMgZK9FGqkjWZCrX
35
- gzT/LCrBbBlDSgeF59N89iFo7+ryUp9/k5DPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV
36
- HRMBAf8EBTADAQH/MB0GA1UdDgQWBBRge2YaRQ2XyolQL30EzTSo//z9SzANBgkqhkiG9w0BAQUF
37
- AAOCAQEA1nPnfE920I2/7LqivjTFKDK1fPxsnCwrvQmeU79rXqoRSLblCKOzyj1hTdNGCbM+w6Dj
38
- Y1Ub8rrvrTnhQ7k4o+YviiY776BQVvnGCv04zcQLcFGUl5gE38NflNUVyRRBnMRddWQVDf9VMOyG
39
- j/8N7yy5Y0b2qvzfvGn9LhJIZJrglfCm7ymPAbEVtQwdpf5pLGkkeB6zpxxxYu7KyJesF12KwvhH
40
- hm4qxFYxldBniYUr+WymXUadDKqC5JlR3XC321Y9YeRq4VzW9v493kHMB65jUr9TU/Qr6cf9tveC
41
- X4XSQRjbgbMEHMUfpIBvFSDJ3gyICh3WZlXi/EjJKSZp4A==
42
- -----END CERTIFICATE-----
43
-
44
- Entrust.net Premium 2048 Secure Server CA
45
- =========================================
46
- -----BEGIN CERTIFICATE-----
47
- MIIEKjCCAxKgAwIBAgIEOGPe+DANBgkqhkiG9w0BAQUFADCBtDEUMBIGA1UEChMLRW50cnVzdC5u
48
- ZXQxQDA+BgNVBAsUN3d3dy5lbnRydXN0Lm5ldC9DUFNfMjA0OCBpbmNvcnAuIGJ5IHJlZi4gKGxp
49
- bWl0cyBsaWFiLikxJTAjBgNVBAsTHChjKSAxOTk5IEVudHJ1c3QubmV0IExpbWl0ZWQxMzAxBgNV
50
- BAMTKkVudHJ1c3QubmV0IENlcnRpZmljYXRpb24gQXV0aG9yaXR5ICgyMDQ4KTAeFw05OTEyMjQx
51
- NzUwNTFaFw0yOTA3MjQxNDE1MTJaMIG0MRQwEgYDVQQKEwtFbnRydXN0Lm5ldDFAMD4GA1UECxQ3
52
- d3d3LmVudHJ1c3QubmV0L0NQU18yMDQ4IGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTEl
53
- MCMGA1UECxMcKGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDEzMDEGA1UEAxMqRW50cnVzdC5u
54
- ZXQgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgKDIwNDgpMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
55
- MIIBCgKCAQEArU1LqRKGsuqjIAcVFmQqK0vRvwtKTY7tgHalZ7d4QMBzQshowNtTK91euHaYNZOL
56
- Gp18EzoOH1u3Hs/lJBQesYGpjX24zGtLA/ECDNyrpUAkAH90lKGdCCmziAv1h3edVc3kw37XamSr
57
- hRSGlVuXMlBvPci6Zgzj/L24ScF2iUkZ/cCovYmjZy/Gn7xxGWC4LeksyZB2ZnuU4q941mVTXTzW
58
- nLLPKQP5L6RQstRIzgUyVYr9smRMDuSYB3Xbf9+5CFVghTAp+XtIpGmG4zU/HoZdenoVve8AjhUi
59
- VBcAkCaTvA5JaJG/+EfTnZVCwQ5N328mz8MYIWJmQ3DW1cAH4QIDAQABo0IwQDAOBgNVHQ8BAf8E
60
- BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUVeSB0RGAvtiJuQijMfmhJAkWuXAwDQYJ
61
- KoZIhvcNAQEFBQADggEBADubj1abMOdTmXx6eadNl9cZlZD7Bh/KM3xGY4+WZiT6QBshJ8rmcnPy
62
- T/4xmf3IDExoU8aAghOY+rat2l098c5u9hURlIIM7j+VrxGrD9cv3h8Dj1csHsm7mhpElesYT6Yf
63
- zX1XEC+bBAlahLVu2B064dae0Wx5XnkcFMXj0EyTO2U87d89vqbllRrDtRnDvV5bu/8j72gZyxKT
64
- J1wDLW8w0B62GqzeWvfRqqgnpv55gcR5mTNXuhKwqeBCbJPKVt7+bYQLCIt+jerXmCHG8+c8eS9e
65
- nNFMFY3h7CI3zJpDC5fcgJCNs2ebb0gIFVbPv/ErfF6adulZkMV8gzURZVE=
66
- -----END CERTIFICATE-----
67
-
68
- Baltimore CyberTrust Root
69
- =========================
70
- -----BEGIN CERTIFICATE-----
71
- MIIDdzCCAl+gAwIBAgIEAgAAuTANBgkqhkiG9w0BAQUFADBaMQswCQYDVQQGEwJJRTESMBAGA1UE
72
- ChMJQmFsdGltb3JlMRMwEQYDVQQLEwpDeWJlclRydXN0MSIwIAYDVQQDExlCYWx0aW1vcmUgQ3li
73
- ZXJUcnVzdCBSb290MB4XDTAwMDUxMjE4NDYwMFoXDTI1MDUxMjIzNTkwMFowWjELMAkGA1UEBhMC
74
- SUUxEjAQBgNVBAoTCUJhbHRpbW9yZTETMBEGA1UECxMKQ3liZXJUcnVzdDEiMCAGA1UEAxMZQmFs
75
- dGltb3JlIEN5YmVyVHJ1c3QgUm9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKME
76
- uyKrmD1X6CZymrV51Cni4eiVgLGw41uOKymaZN+hXe2wCQVt2yguzmKiYv60iNoS6zjrIZ3AQSsB
77
- UnuId9Mcj8e6uYi1agnnc+gRQKfRzMpijS3ljwumUNKoUMMo6vWrJYeKmpYcqWe4PwzV9/lSEy/C
78
- G9VwcPCPwBLKBsua4dnKM3p31vjsufFoREJIE9LAwqSuXmD+tqYF/LTdB1kC1FkYmGP1pWPgkAx9
79
- XbIGevOF6uvUA65ehD5f/xXtabz5OTZydc93Uk3zyZAsuT3lySNTPx8kmCFcB5kpvcY67Oduhjpr
80
- l3RjM71oGDHweI12v/yejl0qhqdNkNwnGjkCAwEAAaNFMEMwHQYDVR0OBBYEFOWdWTCCR1jMrPoI
81
- VDaGezq1BE3wMBIGA1UdEwEB/wQIMAYBAf8CAQMwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEB
82
- BQUAA4IBAQCFDF2O5G9RaEIFoN27TyclhAO992T9Ldcw46QQF+vaKSm2eT929hkTI7gQCvlYpNRh
83
- cL0EYWoSihfVCr3FvDB81ukMJY2GQE/szKN+OMY3EU/t3WgxjkzSswF07r51XgdIGn9w/xZchMB5
84
- hbgF/X++ZRGjD8ACtPhSNzkE1akxehi/oCr0Epn3o0WC4zxe9Z2etciefC7IpJ5OCBRLbf1wbWsa
85
- Y71k5h+3zvDyny67G7fyUIhzksLi4xaNmjICq44Y3ekQEe5+NauQrz4wlHrQMz2nZQ/1/I6eYs9H
86
- RCwBXbsdtTLSR9I4LtD+gdwyah617jzV/OeBHRnDJELqYzmp
87
- -----END CERTIFICATE-----
88
-
89
23
  Entrust Root Certification Authority
90
24
  ====================================
91
25
  -----BEGIN CERTIFICATE-----
@@ -112,30 +46,6 @@ W3iDVuycNsMm4hH2Z0kdkquM++v/eu6FSqdQgPCnXEqULl8FmTxSQeDNtGPPAUO6nIPcj2A781q0
112
46
  tHuu2guQOHXvgR1m0vdXcDazv/wor3ElhVsT/h5/WrQ8
113
47
  -----END CERTIFICATE-----
114
48
 
115
- Comodo AAA Services root
116
- ========================
117
- -----BEGIN CERTIFICATE-----
118
- MIIEMjCCAxqgAwIBAgIBATANBgkqhkiG9w0BAQUFADB7MQswCQYDVQQGEwJHQjEbMBkGA1UECAwS
119
- R3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRowGAYDVQQKDBFDb21vZG8gQ0Eg
120
- TGltaXRlZDEhMB8GA1UEAwwYQUFBIENlcnRpZmljYXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwMDAw
121
- MFoXDTI4MTIzMTIzNTk1OVowezELMAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFuY2hl
122
- c3RlcjEQMA4GA1UEBwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENBIExpbWl0ZWQxITAfBgNV
123
- BAMMGEFBQSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
124
- ggEBAL5AnfRu4ep2hxxNRUSOvkbIgwadwSr+GB+O5AL686tdUIoWMQuaBtDFcCLNSS1UY8y2bmhG
125
- C1Pqy0wkwLxyTurxFa70VJoSCsN6sjNg4tqJVfMiWPPe3M/vg4aijJRPn2jymJBGhCfHdr/jzDUs
126
- i14HZGWCwEiwqJH5YZ92IFCokcdmtet4YgNW8IoaE+oxox6gmf049vYnMlhvB/VruPsUK6+3qszW
127
- Y19zjNoFmag4qMsXeDZRrOme9Hg6jc8P2ULimAyrL58OAd7vn5lJ8S3frHRNG5i1R8XlKdH5kBjH
128
- Ypy+g8cmez6KJcfA3Z3mNWgQIJ2P2N7Sw4ScDV7oL8kCAwEAAaOBwDCBvTAdBgNVHQ4EFgQUoBEK
129
- Iz6W8Qfs4q8p74Klf9AwpLQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wewYDVR0f
130
- BHQwcjA4oDagNIYyaHR0cDovL2NybC5jb21vZG9jYS5jb20vQUFBQ2VydGlmaWNhdGVTZXJ2aWNl
131
- cy5jcmwwNqA0oDKGMGh0dHA6Ly9jcmwuY29tb2RvLm5ldC9BQUFDZXJ0aWZpY2F0ZVNlcnZpY2Vz
132
- LmNybDANBgkqhkiG9w0BAQUFAAOCAQEACFb8AvCb6P+k+tZ7xkSAzk/ExfYAWMymtrwUSWgEdujm
133
- 7l3sAg9g1o1QGE8mTgHj5rCl7r+8dFRBv/38ErjHT1r0iWAFf2C3BUrz9vHCv8S5dIa2LX1rzNLz
134
- Rt0vxuBqw8M0Ayx9lt1awg6nCpnBBYurDC/zXDrPbDdVCYfeU0BsWO/8tqtlbgT2G9w84FoVxp7Z
135
- 8VlIMCFlA2zs6SFz7JsDoeA3raAVGI/6ugLOpyypEBMs1OUIJqsil2D4kF501KKaU73yqWjgom7C
136
- 12yxow+ev+to51byrvLjKzg6CYG1a4XXvi3tPxq3smPi9WIsgtRqAEFQ8TmDn5XpNpaYbg==
137
- -----END CERTIFICATE-----
138
-
139
49
  QuoVadis Root CA 2
140
50
  ==================
141
51
  -----BEGIN CERTIFICATE-----
@@ -202,78 +112,6 @@ vGJHvOB0K7Lrfb5BG7XARsWhIstfTsEokt4YutUqKLsRixeTmJlglFwjz1onl14LBQaTNx47aTbr
202
112
  qZ5hHY8y2o4M1nQ+ewkk2gF3R8Q7zTSMmfXK4SVhM7JZG+Ju1zdXtg2pEto=
203
113
  -----END CERTIFICATE-----
204
114
 
205
- XRamp Global CA Root
206
- ====================
207
- -----BEGIN CERTIFICATE-----
208
- MIIEMDCCAxigAwIBAgIQUJRs7Bjq1ZxN1ZfvdY+grTANBgkqhkiG9w0BAQUFADCBgjELMAkGA1UE
209
- BhMCVVMxHjAcBgNVBAsTFXd3dy54cmFtcHNlY3VyaXR5LmNvbTEkMCIGA1UEChMbWFJhbXAgU2Vj
210
- dXJpdHkgU2VydmljZXMgSW5jMS0wKwYDVQQDEyRYUmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBB
211
- dXRob3JpdHkwHhcNMDQxMTAxMTcxNDA0WhcNMzUwMTAxMDUzNzE5WjCBgjELMAkGA1UEBhMCVVMx
212
- HjAcBgNVBAsTFXd3dy54cmFtcHNlY3VyaXR5LmNvbTEkMCIGA1UEChMbWFJhbXAgU2VjdXJpdHkg
213
- U2VydmljZXMgSW5jMS0wKwYDVQQDEyRYUmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBBdXRob3Jp
214
- dHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCYJB69FbS638eMpSe2OAtp87ZOqCwu
215
- IR1cRN8hXX4jdP5efrRKt6atH67gBhbim1vZZ3RrXYCPKZ2GG9mcDZhtdhAoWORlsH9KmHmf4MMx
216
- foArtYzAQDsRhtDLooY2YKTVMIJt2W7QDxIEM5dfT2Fa8OT5kavnHTu86M/0ay00fOJIYRyO82FE
217
- zG+gSqmUsE3a56k0enI4qEHMPJQRfevIpoy3hsvKMzvZPTeL+3o+hiznc9cKV6xkmxnr9A8ECIqs
218
- AxcZZPRaJSKNNCyy9mgdEm3Tih4U2sSPpuIjhdV6Db1q4Ons7Be7QhtnqiXtRYMh/MHJfNViPvry
219
- xS3T/dRlAgMBAAGjgZ8wgZwwEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0PBAQDAgGGMA8GA1Ud
220
- EwEB/wQFMAMBAf8wHQYDVR0OBBYEFMZPoj0GY4QJnM5i5ASsjVy16bYbMDYGA1UdHwQvMC0wK6Ap
221
- oCeGJWh0dHA6Ly9jcmwueHJhbXBzZWN1cml0eS5jb20vWEdDQS5jcmwwEAYJKwYBBAGCNxUBBAMC
222
- AQEwDQYJKoZIhvcNAQEFBQADggEBAJEVOQMBG2f7Shz5CmBbodpNl2L5JFMn14JkTpAuw0kbK5rc
223
- /Kh4ZzXxHfARvbdI4xD2Dd8/0sm2qlWkSLoC295ZLhVbO50WfUfXN+pfTXYSNrsf16GBBEYgoyxt
224
- qZ4Bfj8pzgCT3/3JknOJiWSe5yvkHJEs0rnOfc5vMZnT5r7SHpDwCRR5XCOrTdLaIR9NmXmd4c8n
225
- nxCbHIgNsIpkQTG4DmyQJKSbXHGPurt+HBvbaoAPIbzp26a3QPSyi6mx5O+aGtA9aZnuqCij4Tyz
226
- 8LIRnM98QObd50N9otg6tamN8jSZxNQQ4Qb9CYQQO+7ETPTsJ3xCwnR8gooJybQDJbw=
227
- -----END CERTIFICATE-----
228
-
229
- Go Daddy Class 2 CA
230
- ===================
231
- -----BEGIN CERTIFICATE-----
232
- MIIEADCCAuigAwIBAgIBADANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMY
233
- VGhlIEdvIERhZGR5IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRp
234
- ZmljYXRpb24gQXV0aG9yaXR5MB4XDTA0MDYyOTE3MDYyMFoXDTM0MDYyOTE3MDYyMFowYzELMAkG
235
- A1UEBhMCVVMxITAfBgNVBAoTGFRoZSBHbyBEYWRkeSBHcm91cCwgSW5jLjExMC8GA1UECxMoR28g
236
- RGFkZHkgQ2xhc3MgMiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASAwDQYJKoZIhvcNAQEBBQAD
237
- ggENADCCAQgCggEBAN6d1+pXGEmhW+vXX0iG6r7d/+TvZxz0ZWizV3GgXne77ZtJ6XCAPVYYYwhv
238
- 2vLM0D9/AlQiVBDYsoHUwHU9S3/Hd8M+eKsaA7Ugay9qK7HFiH7Eux6wwdhFJ2+qN1j3hybX2C32
239
- qRe3H3I2TqYXP2WYktsqbl2i/ojgC95/5Y0V4evLOtXiEqITLdiOr18SPaAIBQi2XKVlOARFmR6j
240
- YGB0xUGlcmIbYsUfb18aQr4CUWWoriMYavx4A6lNf4DD+qta/KFApMoZFv6yyO9ecw3ud72a9nmY
241
- vLEHZ6IVDd2gWMZEewo+YihfukEHU1jPEX44dMX4/7VpkI+EdOqXG68CAQOjgcAwgb0wHQYDVR0O
242
- BBYEFNLEsNKR1EwRcbNhyz2h/t2oatTjMIGNBgNVHSMEgYUwgYKAFNLEsNKR1EwRcbNhyz2h/t2o
243
- atTjoWekZTBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYVGhlIEdvIERhZGR5IEdyb3VwLCBJbmMu
244
- MTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggEAMAwG
245
- A1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBADJL87LKPpH8EsahB4yOd6AzBhRckB4Y9wim
246
- PQoZ+YeAEW5p5JYXMP80kWNyOO7MHAGjHZQopDH2esRU1/blMVgDoszOYtuURXO1v0XJJLXVggKt
247
- I3lpjbi2Tc7PTMozI+gciKqdi0FuFskg5YmezTvacPd+mSYgFFQlq25zheabIZ0KbIIOqPjCDPoQ
248
- HmyW74cNxA9hi63ugyuV+I6ShHI56yDqg+2DzZduCLzrTia2cyvk0/ZM/iZx4mERdEr/VxqHD3VI
249
- Ls9RaRegAhJhldXRQLIQTO7ErBBDpqWeCtWVYpoNz4iCxTIM5CufReYNnyicsbkqWletNw+vHX/b
250
- vZ8=
251
- -----END CERTIFICATE-----
252
-
253
- Starfield Class 2 CA
254
- ====================
255
- -----BEGIN CERTIFICATE-----
256
- MIIEDzCCAvegAwIBAgIBADANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJVUzElMCMGA1UEChMc
257
- U3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMpU3RhcmZpZWxkIENsYXNzIDIg
258
- Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQwNjI5MTczOTE2WhcNMzQwNjI5MTczOTE2WjBo
259
- MQswCQYDVQQGEwJVUzElMCMGA1UEChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAG
260
- A1UECxMpU3RhcmZpZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggEgMA0GCSqG
261
- SIb3DQEBAQUAA4IBDQAwggEIAoIBAQC3Msj+6XGmBIWtDBFk385N78gDGIc/oav7PKaf8MOh2tTY
262
- bitTkPskpD6E8J7oX+zlJ0T1KKY/e97gKvDIr1MvnsoFAZMej2YcOadN+lq2cwQlZut3f+dZxkqZ
263
- JRRU6ybH838Z1TBwj6+wRir/resp7defqgSHo9T5iaU0X9tDkYI22WY8sbi5gv2cOj4QyDvvBmVm
264
- epsZGD3/cVE8MC5fvj13c7JdBmzDI1aaK4UmkhynArPkPw2vCHmCuDY96pzTNbO8acr1zJ3o/WSN
265
- F4Azbl5KXZnJHoe0nRrA1W4TNSNe35tfPe/W93bC6j67eA0cQmdrBNj41tpvi/JEoAGrAgEDo4HF
266
- MIHCMB0GA1UdDgQWBBS/X7fRzt0fhvRbVazc1xDCDqmI5zCBkgYDVR0jBIGKMIGHgBS/X7fRzt0f
267
- hvRbVazc1xDCDqmI56FspGowaDELMAkGA1UEBhMCVVMxJTAjBgNVBAoTHFN0YXJmaWVsZCBUZWNo
268
- bm9sb2dpZXMsIEluYy4xMjAwBgNVBAsTKVN0YXJmaWVsZCBDbGFzcyAyIENlcnRpZmljYXRpb24g
269
- QXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAAWdP4id0ckaVaGs
270
- afPzWdqbAYcaT1epoXkJKtv3L7IezMdeatiDh6GX70k1PncGQVhiv45YuApnP+yz3SFmH8lU+nLM
271
- PUxA2IGvd56Deruix/U0F47ZEUD0/CwqTRV/p2JdLiXTAAsgGh1o+Re49L2L7ShZ3U0WixeDyLJl
272
- xy16paq8U4Zt3VekyvggQQto8PT7dL5WXXp59fkdheMtlb71cZBDzI0fmgAKhynpVSJYACPq4xJD
273
- KVtHCN2MQWplBqjlIapBtJUhlbl90TSrE9atvNziPTnNvT51cKEYWQPJIrSPnNVeKtelttQKbfi3
274
- QBFGmh95DmK/D5fs4C8fF5Q=
275
- -----END CERTIFICATE-----
276
-
277
115
  DigiCert Assured ID Root CA
278
116
  ===========================
279
117
  -----BEGIN CERTIFICATE-----
@@ -1 +1 @@
1
- 50a6277ec69113f00c5fd45f09e8b97a4b3e32daa35d3a95ab30137a55386cef cacert.pem
1
+ ab3ee3651977a4178a702b0b828a4ee7b2bbb9127235b0ab740e2e15974bf5db cacert.pem
@@ -21,7 +21,7 @@ endif()
21
21
 
22
22
  project(
23
23
  couchbase_cxx_client
24
- VERSION "1.0.6"
24
+ VERSION "1.1.0"
25
25
  LANGUAGES CXX C)
26
26
  message(STATUS "Couchbase C++ client ${couchbase_cxx_client_VERSION} build ${couchbase_cxx_client_BUILD_NUMBER}, master: ${COUCHBASE_CXX_CLIENT_MASTER_PROJECT}")
27
27
  message(STATUS "System: ${CMAKE_SYSTEM_NAME}, ${CMAKE_SYSTEM_VERSION}, ${CMAKE_SYSTEM_PROCESSOR}")
@@ -55,6 +55,8 @@ include(cmake/CompilerWarnings.cmake)
55
55
  # sanitizer options if supported by compiler
56
56
  include(cmake/Sanitizers.cmake)
57
57
 
58
+ include(cmake/Profiler.cmake)
59
+
58
60
  # allow for static analysis options
59
61
  include(cmake/StaticAnalyzers.cmake)
60
62
 
@@ -215,6 +217,8 @@ set(couchbase_cxx_client_FILES
215
217
  core/impl/term_query.cxx
216
218
  core/impl/term_range_query.cxx
217
219
  core/impl/transaction_error_category.cxx
220
+ core/impl/transaction_get_multi_replicas_from_preferred_server_group_spec.cxx
221
+ core/impl/transaction_get_multi_spec.cxx
218
222
  core/impl/transaction_get_result.cxx
219
223
  core/impl/transaction_op_error_category.cxx
220
224
  core/impl/vector_query.cxx
@@ -415,6 +419,7 @@ set(couchbase_cxx_client_FILES
415
419
  core/transactions/cleanup_testing_hooks.cxx
416
420
  core/transactions/exceptions.cxx
417
421
  core/transactions/forward_compat.cxx
422
+ core/transactions/get_multi_orchestrator.cxx
418
423
  core/transactions/internal/doc_record.cxx
419
424
  core/transactions/result.cxx
420
425
  core/transactions/staged_mutation.cxx
@@ -438,6 +443,11 @@ set(couchbase_cxx_client_FILES
438
443
  core/utils/split_string.cxx
439
444
  core/utils/url_codec.cxx
440
445
  core/view_query_options.cxx
446
+ core/websocket_codec.cxx
447
+ core/app_telemetry_address.cxx
448
+ core/app_telemetry_meter.cxx
449
+ core/app_telemetry_reporter.cxx
450
+ core/cluster_credentials.cxx
441
451
  )
442
452
 
443
453
  set(couchbase_cxx_client_LIBRARIES)
@@ -511,6 +521,7 @@ foreach(TARGET ${couchbase_cxx_client_LIBRARIES})
511
521
  target_include_directories(${TARGET} PUBLIC $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
512
522
 
513
523
  enable_sanitizers(${TARGET})
524
+ enable_profiler(${TARGET})
514
525
  target_link_libraries(
515
526
  ${TARGET}
516
527
  PRIVATE project_options
@@ -21,9 +21,9 @@ CPMAddPackage(
21
21
  NAME
22
22
  couchbase_cxx_client
23
23
  GIT_TAG
24
- 1.0.6
24
+ 1.1.0
25
25
  VERSION
26
- 1.0.6
26
+ 1.1.0
27
27
  GITHUB_REPOSITORY
28
28
  "couchbase/couchbase-cxx-client"
29
29
  OPTIONS
@@ -0,0 +1,15 @@
1
+ option(COUCHBASE_CXX_CLIENT_PROFILER "Build with profiler (gperftools) support" FALSE)
2
+
3
+ if(COUCHBASE_CXX_CLIENT_PROFILER)
4
+ find_package(PkgConfig REQUIRED)
5
+ pkg_check_modules(LIBPROFILER REQUIRED libprofiler)
6
+ if(NOT LIBPROFILER_FOUND)
7
+ message(FATAL_ERROR "COUCHBASE_CXX_CLIENT_PROFILER requested, but libprofiler (gperftools) is not found")
8
+ endif()
9
+ endif()
10
+
11
+ function(enable_profiler target)
12
+ if(COUCHBASE_CXX_CLIENT_PROFILER)
13
+ target_link_libraries(${target} PRIVATE ${LIBPROFILER_LIBRARIES})
14
+ endif()
15
+ endfunction()
@@ -0,0 +1,55 @@
1
+ /* -*- Mode: C++; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
2
+ /*
3
+ * Copyright 2024-Present Couchbase, Inc.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
6
+ * except in compliance with the License. You may obtain a copy of the License at
7
+ *
8
+ * https://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software distributed under
11
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
12
+ * ANY KIND, either express or implied. See the License for the specific language governing
13
+ * permissions and limitations under the License.
14
+ */
15
+
16
+ #include "app_telemetry_address.hxx"
17
+
18
+ #include "topology/configuration.hxx"
19
+
20
+ #include <algorithm>
21
+ #include <random>
22
+
23
+ namespace couchbase::core
24
+ {
25
+ auto
26
+ get_app_telemetry_addresses(const topology::configuration& config,
27
+ bool use_tls,
28
+ const std::string& network) -> std::vector<app_telemetry_address>
29
+ {
30
+ std::vector<app_telemetry_address> addresses;
31
+ addresses.reserve(config.nodes.size());
32
+ for (const auto& node : config.nodes) {
33
+ if (auto app_telemetry_path = node.app_telemetry_path; app_telemetry_path) {
34
+ auto node_uuid = node.node_uuid;
35
+ if (node_uuid.empty()) {
36
+ continue;
37
+ }
38
+
39
+ if (auto port = node.port_or(network, service_type::management, use_tls, 0); port != 0) {
40
+ addresses.push_back({
41
+ node.hostname_for(network),
42
+ std::to_string(port),
43
+ app_telemetry_path.value(),
44
+ node_uuid,
45
+ });
46
+ }
47
+ }
48
+ }
49
+
50
+ static thread_local std::default_random_engine gen{ std::random_device{}() };
51
+ std::shuffle(addresses.begin(), addresses.end(), gen);
52
+ return addresses;
53
+ }
54
+
55
+ } // namespace couchbase::core
@@ -0,0 +1,39 @@
1
+ /* -*- Mode: C++; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */
2
+ /*
3
+ * Copyright 2024-Present Couchbase, Inc.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
6
+ * except in compliance with the License. You may obtain a copy of the License at
7
+ *
8
+ * https://www.apache.org/licenses/LICENSE-2.0
9
+ *
10
+ * Unless required by applicable law or agreed to in writing, software distributed under
11
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
12
+ * ANY KIND, either express or implied. See the License for the specific language governing
13
+ * permissions and limitations under the License.
14
+ */
15
+
16
+ #pragma once
17
+
18
+ #include <string>
19
+ #include <vector>
20
+
21
+ namespace couchbase::core
22
+ {
23
+ namespace topology
24
+ {
25
+ struct configuration;
26
+ } // namespace topology
27
+
28
+ struct app_telemetry_address {
29
+ std::string hostname;
30
+ std::string service;
31
+ std::string path;
32
+ std::string host_uuid;
33
+ };
34
+
35
+ auto
36
+ get_app_telemetry_addresses(const topology::configuration& config,
37
+ bool use_tls,
38
+ const std::string& network) -> std::vector<app_telemetry_address>;
39
+ } // namespace couchbase::core