oxygen-cli 1.40.2-beta.1 → 1.40.2
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.
- package/CHANGELOG.md +1750 -1742
- package/LICENSE +672 -672
- package/README.md +37 -37
- package/build/core/OxygenCore.js +1 -1
- package/build/core/OxygenEvents.js +1 -1
- package/build/core/OxygenModule.js +1 -1
- package/build/core/OxygenService.js +1 -1
- package/build/core/OxygenSubModule.js +1 -1
- package/build/core/WebDriverModule.js +1 -1
- package/build/core/utils.js +1 -1
- package/build/errors/HookError.js +1 -1
- package/build/errors/ModuleError.js +1 -1
- package/build/errors/ModuleUnavailableError.js +1 -1
- package/build/errors/OxygenError.js +1 -1
- package/build/errors/ScriptNotFound.js +1 -1
- package/build/errors/helper.js +1 -2
- package/build/index.js +1 -1
- package/build/lib/cli-util.js +1 -5
- package/build/lib/cli.js +1 -1
- package/build/lib/debugger.js +1 -1
- package/build/lib/img-merge.js +1 -1
- package/build/lib/launcher.js +1 -1
- package/build/lib/logger.js +43 -43
- package/build/lib/moduleRequire.js +1 -1
- package/build/lib/parallel-launcher.js +1 -1
- package/build/lib/param-manager.js +1 -1
- package/build/lib/param-reader-csv.js +1 -1
- package/build/lib/param-reader-excel.js +1 -1
- package/build/lib/param-reader-json.js +1 -1
- package/build/lib/text-to-image.js +1 -1
- package/build/lib/util.js +1 -1
- package/build/model/case-result.js +1 -1
- package/build/model/failure.js +1 -1
- package/build/model/status.js +1 -1
- package/build/model/step-result.js +1 -1
- package/build/model/suite-result.js +1 -1
- package/build/model/test-result.js +1 -1
- package/build/model/testcase.js +1 -1
- package/build/model/testsuite.js +1 -1
- package/build/ox_modules/index.js +1 -9
- package/build/ox_modules/module-assert.js +37 -37
- package/build/ox_modules/module-date.js +24 -24
- package/build/ox_modules/module-db.js +52 -52
- package/build/ox_modules/module-email.js +59 -59
- package/build/ox_modules/module-eyes.js +34 -34
- package/build/ox_modules/module-http/ntlm-util.js +10 -10
- package/build/ox_modules/module-http/ntlm.js +15 -15
- package/build/ox_modules/module-http.js +132 -132
- package/build/ox_modules/module-log.js +27 -27
- package/build/ox_modules/module-mailinator.js +87 -87
- package/build/ox_modules/module-mob/commands/alertAccept.js +17 -17
- package/build/ox_modules/module-mob/commands/alertDismiss.js +17 -17
- package/build/ox_modules/module-mob/commands/assertAlert.js +20 -20
- package/build/ox_modules/module-mob/commands/assertText.js +21 -21
- package/build/ox_modules/module-mob/commands/assertTitle.js +19 -19
- package/build/ox_modules/module-mob/commands/assertValue.js +18 -18
- package/build/ox_modules/module-mob/commands/back.js +16 -16
- package/build/ox_modules/module-mob/commands/clear.js +19 -19
- package/build/ox_modules/module-mob/commands/click.js +17 -17
- package/build/ox_modules/module-mob/commands/clickHidden.js +17 -17
- package/build/ox_modules/module-mob/commands/clickLong.js +18 -18
- package/build/ox_modules/module-mob/commands/clickMultipleTimes.js +18 -18
- package/build/ox_modules/module-mob/commands/closeApp.js +16 -16
- package/build/ox_modules/module-mob/commands/debug.js +16 -16
- package/build/ox_modules/module-mob/commands/dragAndDrop.js +19 -19
- package/build/ox_modules/module-mob/commands/enableNetwork.js +27 -27
- package/build/ox_modules/module-mob/commands/execute.js +21 -21
- package/build/ox_modules/module-mob/commands/findElement.js +20 -20
- package/build/ox_modules/module-mob/commands/findElements.js +23 -23
- package/build/ox_modules/module-mob/commands/getAlertText.js +17 -17
- package/build/ox_modules/module-mob/commands/getAppiumLogs.js +16 -16
- package/build/ox_modules/module-mob/commands/getBrowserLogs.js +16 -16
- package/build/ox_modules/module-mob/commands/getCurrentActivity.js +15 -15
- package/build/ox_modules/module-mob/commands/getCurrentPackage.js +15 -15
- package/build/ox_modules/module-mob/commands/getDeviceLogs.js +16 -16
- package/build/ox_modules/module-mob/commands/getDeviceTime.js +16 -16
- package/build/ox_modules/module-mob/commands/getLocation.js +20 -20
- package/build/ox_modules/module-mob/commands/getSource.js +16 -16
- package/build/ox_modules/module-mob/commands/getText.js +18 -18
- package/build/ox_modules/module-mob/commands/getTitle.js +13 -13
- package/build/ox_modules/module-mob/commands/getUrl.js +17 -17
- package/build/ox_modules/module-mob/commands/getValue.js +18 -18
- package/build/ox_modules/module-mob/commands/getWindowHandles.js +17 -17
- package/build/ox_modules/module-mob/commands/hideKeyboard.js +21 -21
- package/build/ox_modules/module-mob/commands/index.js +1 -1
- package/build/ox_modules/module-mob/commands/installApp.js +16 -16
- package/build/ox_modules/module-mob/commands/isAppInstalled.js +16 -16
- package/build/ox_modules/module-mob/commands/isCheckable.js +18 -18
- package/build/ox_modules/module-mob/commands/isChecked.js +18 -18
- package/build/ox_modules/module-mob/commands/isClickable.js +18 -18
- package/build/ox_modules/module-mob/commands/isExist.js +19 -19
- package/build/ox_modules/module-mob/commands/isSelected.js +23 -23
- package/build/ox_modules/module-mob/commands/isVisible.js +19 -19
- package/build/ox_modules/module-mob/commands/isWebViewContext.js +16 -16
- package/build/ox_modules/module-mob/commands/launchApp.js +15 -15
- package/build/ox_modules/module-mob/commands/longPressKeyCode.js +18 -18
- package/build/ox_modules/module-mob/commands/open.js +17 -17
- package/build/ox_modules/module-mob/commands/pause.js +16 -16
- package/build/ox_modules/module-mob/commands/removeApp.js +16 -16
- package/build/ox_modules/module-mob/commands/resetApp.js +15 -15
- package/build/ox_modules/module-mob/commands/scrollIntoElement.js +22 -22
- package/build/ox_modules/module-mob/commands/scrollIntoView.js +27 -27
- package/build/ox_modules/module-mob/commands/select.js +24 -24
- package/build/ox_modules/module-mob/commands/selectFrame.js +23 -23
- package/build/ox_modules/module-mob/commands/selectWindow.js +28 -28
- package/build/ox_modules/module-mob/commands/sendKeys.js +29 -29
- package/build/ox_modules/module-mob/commands/setContext.js +16 -16
- package/build/ox_modules/module-mob/commands/setNativeContext.js +15 -15
- package/build/ox_modules/module-mob/commands/setTimeout.js +21 -21
- package/build/ox_modules/module-mob/commands/setWebViewContext.js +16 -16
- package/build/ox_modules/module-mob/commands/shake.js +16 -16
- package/build/ox_modules/module-mob/commands/smsClickLink.js +19 -19
- package/build/ox_modules/module-mob/commands/smsGetText.js +20 -20
- package/build/ox_modules/module-mob/commands/swipe.js +20 -20
- package/build/ox_modules/module-mob/commands/swipeElement.js +20 -20
- package/build/ox_modules/module-mob/commands/swipeScreen.js +20 -20
- package/build/ox_modules/module-mob/commands/takeScreenshot.js +17 -17
- package/build/ox_modules/module-mob/commands/tap.js +17 -17
- package/build/ox_modules/module-mob/commands/type.js +20 -20
- package/build/ox_modules/module-mob/commands/unlockPattern.js +22 -22
- package/build/ox_modules/module-mob/commands/waitForExist.js +18 -18
- package/build/ox_modules/module-mob/commands/waitForInteractable.js +17 -17
- package/build/ox_modules/module-mob/commands/waitForVisible.js +17 -17
- package/build/ox_modules/module-mob.js +74 -74
- package/build/ox_modules/module-pdf.js +35 -35
- package/build/ox_modules/module-proxy.js +77 -77
- package/build/ox_modules/module-serial.js +55 -55
- package/build/ox_modules/module-shell.js +52 -33
- package/build/ox_modules/module-soap.js +72 -72
- package/build/ox_modules/module-twilio.js +41 -41
- package/build/ox_modules/module-utils.js +91 -91
- package/build/ox_modules/module-web/commands/alertAccept.js +17 -17
- package/build/ox_modules/module-web/commands/alertDismiss.js +17 -17
- package/build/ox_modules/module-web/commands/assertAlert.js +20 -20
- package/build/ox_modules/module-web/commands/assertExist.js +17 -17
- package/build/ox_modules/module-web/commands/assertSelectedLabel.js +21 -21
- package/build/ox_modules/module-web/commands/assertSelectedValue.js +21 -21
- package/build/ox_modules/module-web/commands/assertText.js +21 -21
- package/build/ox_modules/module-web/commands/assertTextNotPresent.js +18 -18
- package/build/ox_modules/module-web/commands/assertTextPresent.js +18 -18
- package/build/ox_modules/module-web/commands/assertTitle.js +19 -19
- package/build/ox_modules/module-web/commands/assertValue.js +20 -20
- package/build/ox_modules/module-web/commands/back.js +16 -16
- package/build/ox_modules/module-web/commands/clear.js +18 -18
- package/build/ox_modules/module-web/commands/click.js +25 -25
- package/build/ox_modules/module-web/commands/clickHidden.js +23 -23
- package/build/ox_modules/module-web/commands/closeWindow.js +15 -15
- package/build/ox_modules/module-web/commands/debug.js +15 -15
- package/build/ox_modules/module-web/commands/deleteCookies.js +12 -12
- package/build/ox_modules/module-web/commands/deselect.js +22 -22
- package/build/ox_modules/module-web/commands/doubleClick.js +17 -17
- package/build/ox_modules/module-web/commands/dragAndDrop.js +20 -20
- package/build/ox_modules/module-web/commands/execute.js +24 -24
- package/build/ox_modules/module-web/commands/fileBrowse.js +18 -18
- package/build/ox_modules/module-web/commands/findElement.js +19 -19
- package/build/ox_modules/module-web/commands/findElements.js +22 -22
- package/build/ox_modules/module-web/commands/fullscreenWindow.js +14 -14
- package/build/ox_modules/module-web/commands/getAlertText.js +16 -16
- package/build/ox_modules/module-web/commands/getAttribute.js +19 -19
- package/build/ox_modules/module-web/commands/getBrowserLogs.js +17 -17
- package/build/ox_modules/module-web/commands/getCookies.js +13 -13
- package/build/ox_modules/module-web/commands/getCssValue.js +19 -19
- package/build/ox_modules/module-web/commands/getElementCount.js +17 -17
- package/build/ox_modules/module-web/commands/getHTML.js +17 -17
- package/build/ox_modules/module-web/commands/getSource.js +16 -16
- package/build/ox_modules/module-web/commands/getText.js +18 -18
- package/build/ox_modules/module-web/commands/getTitle.js +12 -12
- package/build/ox_modules/module-web/commands/getUrl.js +16 -16
- package/build/ox_modules/module-web/commands/getValue.js +18 -18
- package/build/ox_modules/module-web/commands/getWindowHandles.js +16 -16
- package/build/ox_modules/module-web/commands/getWindowSize.js +16 -16
- package/build/ox_modules/module-web/commands/getXMLPageSource.js +16 -16
- package/build/ox_modules/module-web/commands/index.js +1 -1
- package/build/ox_modules/module-web/commands/isAlertPresent.js +16 -16
- package/build/ox_modules/module-web/commands/isChecked.js +18 -18
- package/build/ox_modules/module-web/commands/isExist.js +19 -19
- package/build/ox_modules/module-web/commands/isInteractable.js +22 -22
- package/build/ox_modules/module-web/commands/isSelected.js +23 -23
- package/build/ox_modules/module-web/commands/isVisible.js +19 -19
- package/build/ox_modules/module-web/commands/makeVisible.js +25 -25
- package/build/ox_modules/module-web/commands/maximizeWindow.js +14 -14
- package/build/ox_modules/module-web/commands/minimizeWindow.js +14 -14
- package/build/ox_modules/module-web/commands/mock.js +20 -20
- package/build/ox_modules/module-web/commands/mockClearAll.js +12 -12
- package/build/ox_modules/module-web/commands/mockRestoreAll.js +12 -12
- package/build/ox_modules/module-web/commands/newWindow.js +16 -16
- package/build/ox_modules/module-web/commands/open.js +16 -16
- package/build/ox_modules/module-web/commands/pause.js +15 -15
- package/build/ox_modules/module-web/commands/point.js +21 -21
- package/build/ox_modules/module-web/commands/pointJS.js +15 -15
- package/build/ox_modules/module-web/commands/refresh.js +15 -15
- package/build/ox_modules/module-web/commands/rightClick.js +17 -17
- package/build/ox_modules/module-web/commands/rightClickActions.js +19 -19
- package/build/ox_modules/module-web/commands/scrollToElement.js +21 -21
- package/build/ox_modules/module-web/commands/select.js +23 -23
- package/build/ox_modules/module-web/commands/selectFrame.js +24 -24
- package/build/ox_modules/module-web/commands/selectWindow.js +27 -27
- package/build/ox_modules/module-web/commands/sendKeys.js +22 -22
- package/build/ox_modules/module-web/commands/setAutoWaitForAngular.js +20 -20
- package/build/ox_modules/module-web/commands/setTimeout.js +21 -21
- package/build/ox_modules/module-web/commands/setWindowSize.js +17 -17
- package/build/ox_modules/module-web/commands/takeScreenshot.js +17 -17
- package/build/ox_modules/module-web/commands/type.js +20 -20
- package/build/ox_modules/module-web/commands/verifyAlert.js +20 -20
- package/build/ox_modules/module-web/commands/verifyExist.js +17 -17
- package/build/ox_modules/module-web/commands/verifySelectedLabel.js +21 -21
- package/build/ox_modules/module-web/commands/verifySelectedValue.js +21 -21
- package/build/ox_modules/module-web/commands/verifyText.js +21 -21
- package/build/ox_modules/module-web/commands/verifyTextNotPresent.js +18 -18
- package/build/ox_modules/module-web/commands/verifyTextPresent.js +18 -18
- package/build/ox_modules/module-web/commands/verifyTitle.js +19 -19
- package/build/ox_modules/module-web/commands/verifyValue.js +20 -20
- package/build/ox_modules/module-web/commands/waitForAngular.js +19 -19
- package/build/ox_modules/module-web/commands/waitForExist.js +17 -17
- package/build/ox_modules/module-web/commands/waitForInteractable.js +17 -17
- package/build/ox_modules/module-web/commands/waitForNotExist.js +17 -17
- package/build/ox_modules/module-web/commands/waitForNotText.js +20 -20
- package/build/ox_modules/module-web/commands/waitForNotValue.js +20 -20
- package/build/ox_modules/module-web/commands/waitForText.js +20 -20
- package/build/ox_modules/module-web/commands/waitForValue.js +20 -20
- package/build/ox_modules/module-web/commands/waitForVisible.js +17 -17
- package/build/ox_modules/module-web/commands/waitForWindow.js +22 -22
- package/build/ox_modules/module-web.js +94 -94
- package/build/ox_modules/module-win/commands/assertText.js +17 -17
- package/build/ox_modules/module-win/commands/assertTitle.js +15 -15
- package/build/ox_modules/module-win/commands/assertValue.js +14 -14
- package/build/ox_modules/module-win/commands/back.js +11 -11
- package/build/ox_modules/module-win/commands/clear.js +13 -13
- package/build/ox_modules/module-win/commands/click.js +13 -13
- package/build/ox_modules/module-win/commands/clickLong.js +14 -14
- package/build/ox_modules/module-win/commands/clickMultipleTimes.js +14 -14
- package/build/ox_modules/module-win/commands/findElement.js +15 -15
- package/build/ox_modules/module-win/commands/findElements.js +15 -15
- package/build/ox_modules/module-win/commands/getAppiumLogs.js +12 -12
- package/build/ox_modules/module-win/commands/getCurrentWindowHandle.js +15 -15
- package/build/ox_modules/module-win/commands/getLocation.js +14 -14
- package/build/ox_modules/module-win/commands/getSource.js +12 -12
- package/build/ox_modules/module-win/commands/getText.js +14 -14
- package/build/ox_modules/module-win/commands/getValue.js +14 -14
- package/build/ox_modules/module-win/commands/getWindowHandles.js +15 -15
- package/build/ox_modules/module-win/commands/index.js +1 -1
- package/build/ox_modules/module-win/commands/isCheckable.js +14 -14
- package/build/ox_modules/module-win/commands/isChecked.js +14 -14
- package/build/ox_modules/module-win/commands/isClickable.js +14 -14
- package/build/ox_modules/module-win/commands/isExist.js +15 -15
- package/build/ox_modules/module-win/commands/isSelected.js +14 -14
- package/build/ox_modules/module-win/commands/isVisible.js +15 -15
- package/build/ox_modules/module-win/commands/open.js +13 -13
- package/build/ox_modules/module-win/commands/pause.js +12 -12
- package/build/ox_modules/module-win/commands/rightClick.js +13 -13
- package/build/ox_modules/module-win/commands/selectWindow.js +23 -23
- package/build/ox_modules/module-win/commands/sendKeys.js +22 -22
- package/build/ox_modules/module-win/commands/setTimeout.js +17 -17
- package/build/ox_modules/module-win/commands/takeScreenshot.js +16 -16
- package/build/ox_modules/module-win/commands/tap.js +13 -13
- package/build/ox_modules/module-win/commands/type.js +16 -16
- package/build/ox_modules/module-win/commands/waitForExist.js +14 -14
- package/build/ox_modules/module-win/commands/waitForInteractable.js +16 -16
- package/build/ox_modules/module-win/commands/waitForVisible.js +13 -13
- package/build/ox_modules/module-win.js +47 -47
- package/build/ox_modules/utils.js +8 -8
- package/build/ox_reporters/excel/template.json +48 -48
- package/build/ox_reporters/html/index.ejs +163 -163
- package/build/ox_reporters/html/summary.ejs +77 -77
- package/build/ox_reporters/html/tests-details.ejs +134 -134
- package/build/ox_reporters/html/tests-devices-browsers.ejs +83 -83
- package/build/ox_reporters/reporter-excel.js +1 -1
- package/build/ox_reporters/reporter-html.js +1 -1
- package/build/ox_reporters/reporter-json.js +1 -1
- package/build/ox_reporters/reporter-junit.js +1 -1
- package/build/ox_reporters/reporter-pdf.js +1 -1
- package/build/ox_reporters/reporter-rp.js +73 -42
- package/build/ox_reporters/reporter-xml.js +1 -1
- package/build/ox_services/service-devtools/submodule-network.js +1 -1
- package/build/ox_services/service-devtools.js +1 -1
- package/build/reporter/FileReporterBase.js +1 -1
- package/build/reporter/ReportAggregator.js +5 -13
- package/build/reporter/ReporterBase.js +1 -1
- package/build/reporter/WebSocketReporter.js +1 -1
- package/build/runners/WorkerProcess.js +1 -1
- package/build/runners/cucumber/CucumberEventListener.js +1 -1
- package/build/runners/cucumber/CucumberReporter.js +1 -1
- package/build/runners/cucumber/CucumberWorker.js +1 -1
- package/build/runners/cucumber/index.js +1 -1
- package/build/runners/cucumber/worker.js +1 -1
- package/build/runners/index.js +1 -1
- package/build/runners/oxygen/OxygenWorker.js +1 -1
- package/build/runners/oxygen/index.js +1 -1
- package/build/runners/oxygen/worker.js +1 -1
- package/config/default.json +6 -6
- package/package.json +137 -139
- package/types/index.d.ts +70 -70
- package/types/module-eyes.d.ts +39 -39
- package/types/module-http.d.ts +163 -163
- package/types/module-log.d.ts +34 -34
- package/types/module-mob.d.ts +966 -966
- package/types/module-pdf.d.ts +40 -40
- package/types/module-proxy.d.ts +100 -100
- package/types/module-shell.d.ts +24 -24
- package/types/module-utils.d.ts +99 -99
- package/types/module-web.d.ts +1053 -1053
- package/types/module-win.d.ts +352 -352
- package/types/oxygen.d.ts +53 -53
- package/build/ox_modules/module-mongo.js +0 -302
- package/log.txt +0 -1614
- package/reports/2025-06-08_231627/report.html +0 -440
- package/reports/2025-06-09_223615/report.html +0 -440
- package/transpiled/mongodb/etc/prepare.js +0 -18
- package/transpiled/mongodb/lib/admin.js +0 -182
- package/transpiled/mongodb/lib/beta.js +0 -26
- package/transpiled/mongodb/lib/bson.js +0 -220
- package/transpiled/mongodb/lib/bulk/common.js +0 -1041
- package/transpiled/mongodb/lib/bulk/ordered.js +0 -76
- package/transpiled/mongodb/lib/bulk/unordered.js +0 -102
- package/transpiled/mongodb/lib/change_stream.js +0 -517
- package/transpiled/mongodb/lib/client-side-encryption/auto_encrypter.js +0 -329
- package/transpiled/mongodb/lib/client-side-encryption/client_encryption.js +0 -779
- package/transpiled/mongodb/lib/client-side-encryption/crypto_callbacks.js +0 -95
- package/transpiled/mongodb/lib/client-side-encryption/errors.js +0 -171
- package/transpiled/mongodb/lib/client-side-encryption/mongocryptd_manager.js +0 -98
- package/transpiled/mongodb/lib/client-side-encryption/providers/aws.js +0 -34
- package/transpiled/mongodb/lib/client-side-encryption/providers/azure.js +0 -186
- package/transpiled/mongodb/lib/client-side-encryption/providers/gcp.js +0 -29
- package/transpiled/mongodb/lib/client-side-encryption/providers/index.js +0 -58
- package/transpiled/mongodb/lib/client-side-encryption/state_machine.js +0 -505
- package/transpiled/mongodb/lib/cmap/auth/auth_provider.js +0 -63
- package/transpiled/mongodb/lib/cmap/auth/aws_temporary_credentials.js +0 -167
- package/transpiled/mongodb/lib/cmap/auth/gssapi.js +0 -207
- package/transpiled/mongodb/lib/cmap/auth/mongo_credentials.js +0 -193
- package/transpiled/mongodb/lib/cmap/auth/mongodb_aws.js +0 -181
- package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/automated_callback_workflow.js +0 -101
- package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/azure_machine_workflow.js +0 -81
- package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/callback_workflow.js +0 -174
- package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/command_builders.js +0 -59
- package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/gcp_machine_workflow.js +0 -58
- package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/human_callback_workflow.js +0 -138
- package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/k8s_machine_workflow.js +0 -42
- package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/token_cache.js +0 -71
- package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc/token_machine_workflow.js +0 -34
- package/transpiled/mongodb/lib/cmap/auth/mongodb_oidc.js +0 -111
- package/transpiled/mongodb/lib/cmap/auth/plain.js +0 -43
- package/transpiled/mongodb/lib/cmap/auth/providers.js +0 -22
- package/transpiled/mongodb/lib/cmap/auth/scram.js +0 -318
- package/transpiled/mongodb/lib/cmap/auth/x509.js +0 -61
- package/transpiled/mongodb/lib/cmap/command_monitoring_events.js +0 -266
- package/transpiled/mongodb/lib/cmap/commands.js +0 -605
- package/transpiled/mongodb/lib/cmap/connect.js +0 -418
- package/transpiled/mongodb/lib/cmap/connection.js +0 -673
- package/transpiled/mongodb/lib/cmap/connection_pool.js +0 -688
- package/transpiled/mongodb/lib/cmap/connection_pool_events.js +0 -254
- package/transpiled/mongodb/lib/cmap/errors.js +0 -128
- package/transpiled/mongodb/lib/cmap/handshake/client_metadata.js +0 -278
- package/transpiled/mongodb/lib/cmap/metrics.js +0 -67
- package/transpiled/mongodb/lib/cmap/stream_description.js +0 -74
- package/transpiled/mongodb/lib/cmap/wire_protocol/compression.js +0 -196
- package/transpiled/mongodb/lib/cmap/wire_protocol/constants.js +0 -19
- package/transpiled/mongodb/lib/cmap/wire_protocol/on_data.js +0 -144
- package/transpiled/mongodb/lib/cmap/wire_protocol/on_demand/document.js +0 -278
- package/transpiled/mongodb/lib/cmap/wire_protocol/responses.js +0 -376
- package/transpiled/mongodb/lib/cmap/wire_protocol/shared.js +0 -49
- package/transpiled/mongodb/lib/collection.js +0 -852
- package/transpiled/mongodb/lib/connection_string.js +0 -1452
- package/transpiled/mongodb/lib/constants.js +0 -162
- package/transpiled/mongodb/lib/cursor/abstract_cursor.js +0 -1082
- package/transpiled/mongodb/lib/cursor/aggregation_cursor.js +0 -227
- package/transpiled/mongodb/lib/cursor/change_stream_cursor.js +0 -136
- package/transpiled/mongodb/lib/cursor/client_bulk_write_cursor.js +0 -69
- package/transpiled/mongodb/lib/cursor/find_cursor.js +0 -476
- package/transpiled/mongodb/lib/cursor/list_collections_cursor.js +0 -48
- package/transpiled/mongodb/lib/cursor/list_indexes_cursor.js +0 -46
- package/transpiled/mongodb/lib/cursor/list_search_indexes_cursor.js +0 -30
- package/transpiled/mongodb/lib/cursor/run_command_cursor.js +0 -125
- package/transpiled/mongodb/lib/db.js +0 -467
- package/transpiled/mongodb/lib/deps.js +0 -174
- package/transpiled/mongodb/lib/encrypter.js +0 -129
- package/transpiled/mongodb/lib/error.js +0 -1550
- package/transpiled/mongodb/lib/explain.js +0 -122
- package/transpiled/mongodb/lib/gridfs/download.js +0 -369
- package/transpiled/mongodb/lib/gridfs/index.js +0 -240
- package/transpiled/mongodb/lib/gridfs/upload.js +0 -446
- package/transpiled/mongodb/lib/index.js +0 -975
- package/transpiled/mongodb/lib/mongo_client.js +0 -626
- package/transpiled/mongodb/lib/mongo_client_auth_providers.js +0 -98
- package/transpiled/mongodb/lib/mongo_logger.js +0 -812
- package/transpiled/mongodb/lib/mongo_types.js +0 -71
- package/transpiled/mongodb/lib/operations/aggregate.js +0 -129
- package/transpiled/mongodb/lib/operations/bulk_write.js +0 -48
- package/transpiled/mongodb/lib/operations/client_bulk_write/client_bulk_write.js +0 -96
- package/transpiled/mongodb/lib/operations/client_bulk_write/command_builder.js +0 -409
- package/transpiled/mongodb/lib/operations/client_bulk_write/common.js +0 -5
- package/transpiled/mongodb/lib/operations/client_bulk_write/executor.js +0 -144
- package/transpiled/mongodb/lib/operations/client_bulk_write/results_merger.js +0 -228
- package/transpiled/mongodb/lib/operations/collections.js +0 -49
- package/transpiled/mongodb/lib/operations/command.js +0 -102
- package/transpiled/mongodb/lib/operations/count.js +0 -60
- package/transpiled/mongodb/lib/operations/create_collection.js +0 -109
- package/transpiled/mongodb/lib/operations/delete.js +0 -134
- package/transpiled/mongodb/lib/operations/distinct.js +0 -77
- package/transpiled/mongodb/lib/operations/drop.js +0 -102
- package/transpiled/mongodb/lib/operations/estimated_document_count.js +0 -47
- package/transpiled/mongodb/lib/operations/execute_operation.js +0 -251
- package/transpiled/mongodb/lib/operations/find.js +0 -197
- package/transpiled/mongodb/lib/operations/find_and_modify.js +0 -191
- package/transpiled/mongodb/lib/operations/get_more.js +0 -84
- package/transpiled/mongodb/lib/operations/indexes.js +0 -197
- package/transpiled/mongodb/lib/operations/insert.js +0 -138
- package/transpiled/mongodb/lib/operations/is_capped.js +0 -44
- package/transpiled/mongodb/lib/operations/kill_cursors.js +0 -58
- package/transpiled/mongodb/lib/operations/list_collections.js +0 -66
- package/transpiled/mongodb/lib/operations/list_databases.js +0 -56
- package/transpiled/mongodb/lib/operations/operation.js +0 -88
- package/transpiled/mongodb/lib/operations/options_operation.js +0 -44
- package/transpiled/mongodb/lib/operations/profiling_level.js +0 -42
- package/transpiled/mongodb/lib/operations/remove_user.js +0 -35
- package/transpiled/mongodb/lib/operations/rename.js +0 -48
- package/transpiled/mongodb/lib/operations/run_command.js +0 -64
- package/transpiled/mongodb/lib/operations/search_indexes/create.js +0 -41
- package/transpiled/mongodb/lib/operations/search_indexes/drop.js +0 -51
- package/transpiled/mongodb/lib/operations/search_indexes/update.js +0 -40
- package/transpiled/mongodb/lib/operations/set_profiling_level.js +0 -70
- package/transpiled/mongodb/lib/operations/stats.js +0 -39
- package/transpiled/mongodb/lib/operations/update.js +0 -218
- package/transpiled/mongodb/lib/operations/validate_collection.js +0 -49
- package/transpiled/mongodb/lib/read_concern.js +0 -92
- package/transpiled/mongodb/lib/read_preference.js +0 -215
- package/transpiled/mongodb/lib/resource_management.js +0 -74
- package/transpiled/mongodb/lib/sdam/common.js +0 -53
- package/transpiled/mongodb/lib/sdam/events.js +0 -177
- package/transpiled/mongodb/lib/sdam/monitor.js +0 -656
- package/transpiled/mongodb/lib/sdam/server.js +0 -463
- package/transpiled/mongodb/lib/sdam/server_description.js +0 -196
- package/transpiled/mongodb/lib/sdam/server_selection.js +0 -283
- package/transpiled/mongodb/lib/sdam/server_selection_events.js +0 -112
- package/transpiled/mongodb/lib/sdam/srv_polling.js +0 -139
- package/transpiled/mongodb/lib/sdam/topology.js +0 -833
- package/transpiled/mongodb/lib/sdam/topology_description.js +0 -447
- package/transpiled/mongodb/lib/sessions.js +0 -988
- package/transpiled/mongodb/lib/sort.js +0 -123
- package/transpiled/mongodb/lib/timeout.js +0 -349
- package/transpiled/mongodb/lib/transactions.js +0 -149
- package/transpiled/mongodb/lib/utils.js +0 -1502
- package/transpiled/mongodb/lib/write_concern.js +0 -115
|
@@ -1,254 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.ConnectionPoolClearedEvent = exports.ConnectionCheckedInEvent = exports.ConnectionCheckedOutEvent = exports.ConnectionCheckOutFailedEvent = exports.ConnectionCheckOutStartedEvent = exports.ConnectionClosedEvent = exports.ConnectionReadyEvent = exports.ConnectionCreatedEvent = exports.ConnectionPoolClosedEvent = exports.ConnectionPoolReadyEvent = exports.ConnectionPoolCreatedEvent = exports.ConnectionPoolMonitoringEvent = void 0;
|
|
7
|
-
|
|
8
|
-
const constants_1 = require("../constants");
|
|
9
|
-
|
|
10
|
-
const utils_1 = require("../utils");
|
|
11
|
-
/**
|
|
12
|
-
* The base export class for all monitoring events published from the connection pool
|
|
13
|
-
* @public
|
|
14
|
-
* @category Event
|
|
15
|
-
*/
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
class ConnectionPoolMonitoringEvent {
|
|
19
|
-
/** @internal */
|
|
20
|
-
constructor(pool) {
|
|
21
|
-
this.time = new Date();
|
|
22
|
-
this.address = pool.address;
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
exports.ConnectionPoolMonitoringEvent = ConnectionPoolMonitoringEvent;
|
|
28
|
-
/**
|
|
29
|
-
* An event published when a connection pool is created
|
|
30
|
-
* @public
|
|
31
|
-
* @category Event
|
|
32
|
-
*/
|
|
33
|
-
|
|
34
|
-
class ConnectionPoolCreatedEvent extends ConnectionPoolMonitoringEvent {
|
|
35
|
-
/** @internal */
|
|
36
|
-
constructor(pool) {
|
|
37
|
-
super(pool);
|
|
38
|
-
/** @internal */
|
|
39
|
-
|
|
40
|
-
this.name = constants_1.CONNECTION_POOL_CREATED;
|
|
41
|
-
const {
|
|
42
|
-
maxConnecting,
|
|
43
|
-
maxPoolSize,
|
|
44
|
-
minPoolSize,
|
|
45
|
-
maxIdleTimeMS,
|
|
46
|
-
waitQueueTimeoutMS
|
|
47
|
-
} = pool.options;
|
|
48
|
-
this.options = {
|
|
49
|
-
maxConnecting,
|
|
50
|
-
maxPoolSize,
|
|
51
|
-
minPoolSize,
|
|
52
|
-
maxIdleTimeMS,
|
|
53
|
-
waitQueueTimeoutMS
|
|
54
|
-
};
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
exports.ConnectionPoolCreatedEvent = ConnectionPoolCreatedEvent;
|
|
60
|
-
/**
|
|
61
|
-
* An event published when a connection pool is ready
|
|
62
|
-
* @public
|
|
63
|
-
* @category Event
|
|
64
|
-
*/
|
|
65
|
-
|
|
66
|
-
class ConnectionPoolReadyEvent extends ConnectionPoolMonitoringEvent {
|
|
67
|
-
/** @internal */
|
|
68
|
-
constructor(pool) {
|
|
69
|
-
super(pool);
|
|
70
|
-
/** @internal */
|
|
71
|
-
|
|
72
|
-
this.name = constants_1.CONNECTION_POOL_READY;
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
exports.ConnectionPoolReadyEvent = ConnectionPoolReadyEvent;
|
|
78
|
-
/**
|
|
79
|
-
* An event published when a connection pool is closed
|
|
80
|
-
* @public
|
|
81
|
-
* @category Event
|
|
82
|
-
*/
|
|
83
|
-
|
|
84
|
-
class ConnectionPoolClosedEvent extends ConnectionPoolMonitoringEvent {
|
|
85
|
-
/** @internal */
|
|
86
|
-
constructor(pool) {
|
|
87
|
-
super(pool);
|
|
88
|
-
/** @internal */
|
|
89
|
-
|
|
90
|
-
this.name = constants_1.CONNECTION_POOL_CLOSED;
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
exports.ConnectionPoolClosedEvent = ConnectionPoolClosedEvent;
|
|
96
|
-
/**
|
|
97
|
-
* An event published when a connection pool creates a new connection
|
|
98
|
-
* @public
|
|
99
|
-
* @category Event
|
|
100
|
-
*/
|
|
101
|
-
|
|
102
|
-
class ConnectionCreatedEvent extends ConnectionPoolMonitoringEvent {
|
|
103
|
-
/** @internal */
|
|
104
|
-
constructor(pool, connection) {
|
|
105
|
-
super(pool);
|
|
106
|
-
/** @internal */
|
|
107
|
-
|
|
108
|
-
this.name = constants_1.CONNECTION_CREATED;
|
|
109
|
-
this.connectionId = connection.id;
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
exports.ConnectionCreatedEvent = ConnectionCreatedEvent;
|
|
115
|
-
/**
|
|
116
|
-
* An event published when a connection is ready for use
|
|
117
|
-
* @public
|
|
118
|
-
* @category Event
|
|
119
|
-
*/
|
|
120
|
-
|
|
121
|
-
class ConnectionReadyEvent extends ConnectionPoolMonitoringEvent {
|
|
122
|
-
/** @internal */
|
|
123
|
-
constructor(pool, connection, connectionCreatedEventTime) {
|
|
124
|
-
super(pool);
|
|
125
|
-
/** @internal */
|
|
126
|
-
|
|
127
|
-
this.name = constants_1.CONNECTION_READY;
|
|
128
|
-
this.durationMS = (0, utils_1.now)() - connectionCreatedEventTime;
|
|
129
|
-
this.connectionId = connection.id;
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
exports.ConnectionReadyEvent = ConnectionReadyEvent;
|
|
135
|
-
/**
|
|
136
|
-
* An event published when a connection is closed
|
|
137
|
-
* @public
|
|
138
|
-
* @category Event
|
|
139
|
-
*/
|
|
140
|
-
|
|
141
|
-
class ConnectionClosedEvent extends ConnectionPoolMonitoringEvent {
|
|
142
|
-
/** @internal */
|
|
143
|
-
constructor(pool, connection, reason, error) {
|
|
144
|
-
super(pool);
|
|
145
|
-
/** @internal */
|
|
146
|
-
|
|
147
|
-
this.name = constants_1.CONNECTION_CLOSED;
|
|
148
|
-
this.connectionId = connection.id;
|
|
149
|
-
this.reason = reason;
|
|
150
|
-
this.serviceId = connection.serviceId;
|
|
151
|
-
this.error = error ?? null;
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
exports.ConnectionClosedEvent = ConnectionClosedEvent;
|
|
157
|
-
/**
|
|
158
|
-
* An event published when a request to check a connection out begins
|
|
159
|
-
* @public
|
|
160
|
-
* @category Event
|
|
161
|
-
*/
|
|
162
|
-
|
|
163
|
-
class ConnectionCheckOutStartedEvent extends ConnectionPoolMonitoringEvent {
|
|
164
|
-
/** @internal */
|
|
165
|
-
constructor(pool) {
|
|
166
|
-
super(pool);
|
|
167
|
-
/** @internal */
|
|
168
|
-
|
|
169
|
-
this.name = constants_1.CONNECTION_CHECK_OUT_STARTED;
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
exports.ConnectionCheckOutStartedEvent = ConnectionCheckOutStartedEvent;
|
|
175
|
-
/**
|
|
176
|
-
* An event published when a request to check a connection out fails
|
|
177
|
-
* @public
|
|
178
|
-
* @category Event
|
|
179
|
-
*/
|
|
180
|
-
|
|
181
|
-
class ConnectionCheckOutFailedEvent extends ConnectionPoolMonitoringEvent {
|
|
182
|
-
/** @internal */
|
|
183
|
-
constructor(pool, reason, checkoutTime, error) {
|
|
184
|
-
super(pool);
|
|
185
|
-
/** @internal */
|
|
186
|
-
|
|
187
|
-
this.name = constants_1.CONNECTION_CHECK_OUT_FAILED;
|
|
188
|
-
this.durationMS = (0, utils_1.now)() - checkoutTime;
|
|
189
|
-
this.reason = reason;
|
|
190
|
-
this.error = error;
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
exports.ConnectionCheckOutFailedEvent = ConnectionCheckOutFailedEvent;
|
|
196
|
-
/**
|
|
197
|
-
* An event published when a connection is checked out of the connection pool
|
|
198
|
-
* @public
|
|
199
|
-
* @category Event
|
|
200
|
-
*/
|
|
201
|
-
|
|
202
|
-
class ConnectionCheckedOutEvent extends ConnectionPoolMonitoringEvent {
|
|
203
|
-
/** @internal */
|
|
204
|
-
constructor(pool, connection, checkoutTime) {
|
|
205
|
-
super(pool);
|
|
206
|
-
/** @internal */
|
|
207
|
-
|
|
208
|
-
this.name = constants_1.CONNECTION_CHECKED_OUT;
|
|
209
|
-
this.durationMS = (0, utils_1.now)() - checkoutTime;
|
|
210
|
-
this.connectionId = connection.id;
|
|
211
|
-
}
|
|
212
|
-
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
exports.ConnectionCheckedOutEvent = ConnectionCheckedOutEvent;
|
|
216
|
-
/**
|
|
217
|
-
* An event published when a connection is checked into the connection pool
|
|
218
|
-
* @public
|
|
219
|
-
* @category Event
|
|
220
|
-
*/
|
|
221
|
-
|
|
222
|
-
class ConnectionCheckedInEvent extends ConnectionPoolMonitoringEvent {
|
|
223
|
-
/** @internal */
|
|
224
|
-
constructor(pool, connection) {
|
|
225
|
-
super(pool);
|
|
226
|
-
/** @internal */
|
|
227
|
-
|
|
228
|
-
this.name = constants_1.CONNECTION_CHECKED_IN;
|
|
229
|
-
this.connectionId = connection.id;
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
}
|
|
233
|
-
|
|
234
|
-
exports.ConnectionCheckedInEvent = ConnectionCheckedInEvent;
|
|
235
|
-
/**
|
|
236
|
-
* An event published when a connection pool is cleared
|
|
237
|
-
* @public
|
|
238
|
-
* @category Event
|
|
239
|
-
*/
|
|
240
|
-
|
|
241
|
-
class ConnectionPoolClearedEvent extends ConnectionPoolMonitoringEvent {
|
|
242
|
-
/** @internal */
|
|
243
|
-
constructor(pool, options = {}) {
|
|
244
|
-
super(pool);
|
|
245
|
-
/** @internal */
|
|
246
|
-
|
|
247
|
-
this.name = constants_1.CONNECTION_POOL_CLEARED;
|
|
248
|
-
this.serviceId = options.serviceId;
|
|
249
|
-
this.interruptInUseConnections = options.interruptInUseConnections;
|
|
250
|
-
}
|
|
251
|
-
|
|
252
|
-
}
|
|
253
|
-
|
|
254
|
-
exports.ConnectionPoolClearedEvent = ConnectionPoolClearedEvent;
|
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.WaitQueueTimeoutError = exports.PoolClearedOnNetworkError = exports.PoolClearedError = exports.PoolClosedError = void 0;
|
|
7
|
-
|
|
8
|
-
const error_1 = require("../error");
|
|
9
|
-
/**
|
|
10
|
-
* An error indicating a connection pool is closed
|
|
11
|
-
* @category Error
|
|
12
|
-
*/
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
class PoolClosedError extends error_1.MongoDriverError {
|
|
16
|
-
/**
|
|
17
|
-
* **Do not use this constructor!**
|
|
18
|
-
*
|
|
19
|
-
* Meant for internal use only.
|
|
20
|
-
*
|
|
21
|
-
* @remarks
|
|
22
|
-
* This class is only meant to be constructed within the driver. This constructor is
|
|
23
|
-
* not subject to semantic versioning compatibility guarantees and may change at any time.
|
|
24
|
-
*
|
|
25
|
-
* @public
|
|
26
|
-
**/
|
|
27
|
-
constructor(pool) {
|
|
28
|
-
super('Attempted to check out a connection from closed connection pool');
|
|
29
|
-
this.address = pool.address;
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
get name() {
|
|
33
|
-
return 'MongoPoolClosedError';
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
exports.PoolClosedError = PoolClosedError;
|
|
39
|
-
/**
|
|
40
|
-
* An error indicating a connection pool is currently paused
|
|
41
|
-
* @category Error
|
|
42
|
-
*/
|
|
43
|
-
|
|
44
|
-
class PoolClearedError extends error_1.MongoNetworkError {
|
|
45
|
-
/**
|
|
46
|
-
* **Do not use this constructor!**
|
|
47
|
-
*
|
|
48
|
-
* Meant for internal use only.
|
|
49
|
-
*
|
|
50
|
-
* @remarks
|
|
51
|
-
* This class is only meant to be constructed within the driver. This constructor is
|
|
52
|
-
* not subject to semantic versioning compatibility guarantees and may change at any time.
|
|
53
|
-
*
|
|
54
|
-
* @public
|
|
55
|
-
**/
|
|
56
|
-
constructor(pool, message) {
|
|
57
|
-
const errorMessage = message ? message : `Connection pool for ${pool.address} was cleared because another operation failed with: "${pool.serverError?.message}"`;
|
|
58
|
-
super(errorMessage, pool.serverError ? {
|
|
59
|
-
cause: pool.serverError
|
|
60
|
-
} : undefined);
|
|
61
|
-
this.address = pool.address;
|
|
62
|
-
this.addErrorLabel(error_1.MongoErrorLabel.PoolRequstedRetry);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
get name() {
|
|
66
|
-
return 'MongoPoolClearedError';
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
exports.PoolClearedError = PoolClearedError;
|
|
72
|
-
/**
|
|
73
|
-
* An error indicating that a connection pool has been cleared after the monitor for that server timed out.
|
|
74
|
-
* @category Error
|
|
75
|
-
*/
|
|
76
|
-
|
|
77
|
-
class PoolClearedOnNetworkError extends PoolClearedError {
|
|
78
|
-
/**
|
|
79
|
-
* **Do not use this constructor!**
|
|
80
|
-
*
|
|
81
|
-
* Meant for internal use only.
|
|
82
|
-
*
|
|
83
|
-
* @remarks
|
|
84
|
-
* This class is only meant to be constructed within the driver. This constructor is
|
|
85
|
-
* not subject to semantic versioning compatibility guarantees and may change at any time.
|
|
86
|
-
*
|
|
87
|
-
* @public
|
|
88
|
-
**/
|
|
89
|
-
constructor(pool) {
|
|
90
|
-
super(pool, `Connection to ${pool.address} interrupted due to server monitor timeout`);
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
get name() {
|
|
94
|
-
return 'PoolClearedOnNetworkError';
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
exports.PoolClearedOnNetworkError = PoolClearedOnNetworkError;
|
|
100
|
-
/**
|
|
101
|
-
* An error thrown when a request to check out a connection times out
|
|
102
|
-
* @category Error
|
|
103
|
-
*/
|
|
104
|
-
|
|
105
|
-
class WaitQueueTimeoutError extends error_1.MongoDriverError {
|
|
106
|
-
/**
|
|
107
|
-
* **Do not use this constructor!**
|
|
108
|
-
*
|
|
109
|
-
* Meant for internal use only.
|
|
110
|
-
*
|
|
111
|
-
* @remarks
|
|
112
|
-
* This class is only meant to be constructed within the driver. This constructor is
|
|
113
|
-
* not subject to semantic versioning compatibility guarantees and may change at any time.
|
|
114
|
-
*
|
|
115
|
-
* @public
|
|
116
|
-
**/
|
|
117
|
-
constructor(message, address) {
|
|
118
|
-
super(message);
|
|
119
|
-
this.address = address;
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
get name() {
|
|
123
|
-
return 'MongoWaitQueueTimeoutError';
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
exports.WaitQueueTimeoutError = WaitQueueTimeoutError;
|
|
@@ -1,278 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.LimitedSizeDocument = void 0;
|
|
7
|
-
exports.makeClientMetadata = makeClientMetadata;
|
|
8
|
-
exports.addContainerMetadata = addContainerMetadata;
|
|
9
|
-
exports.getFAASEnv = getFAASEnv;
|
|
10
|
-
|
|
11
|
-
const os = require("os");
|
|
12
|
-
|
|
13
|
-
const process = require("process");
|
|
14
|
-
|
|
15
|
-
const bson_1 = require("../../bson");
|
|
16
|
-
|
|
17
|
-
const error_1 = require("../../error");
|
|
18
|
-
|
|
19
|
-
const utils_1 = require("../../utils"); // eslint-disable-next-line @typescript-eslint/no-require-imports
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const NODE_DRIVER_VERSION = require('../../../package.json').version;
|
|
23
|
-
/** @internal */
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
class LimitedSizeDocument {
|
|
27
|
-
constructor(maxSize) {
|
|
28
|
-
this.maxSize = maxSize;
|
|
29
|
-
this.document = new Map();
|
|
30
|
-
/** BSON overhead: Int32 + Null byte */
|
|
31
|
-
|
|
32
|
-
this.documentSize = 5;
|
|
33
|
-
}
|
|
34
|
-
/** Only adds key/value if the bsonByteLength is less than MAX_SIZE */
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
ifItFitsItSits(key, value) {
|
|
38
|
-
// The BSON byteLength of the new element is the same as serializing it to its own document
|
|
39
|
-
// subtracting the document size int32 and the null terminator.
|
|
40
|
-
const newElementSize = bson_1.BSON.serialize(new Map().set(key, value)).byteLength - 5;
|
|
41
|
-
|
|
42
|
-
if (newElementSize + this.documentSize > this.maxSize) {
|
|
43
|
-
return false;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
this.documentSize += newElementSize;
|
|
47
|
-
this.document.set(key, value);
|
|
48
|
-
return true;
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
toObject() {
|
|
52
|
-
return bson_1.BSON.deserialize(bson_1.BSON.serialize(this.document), {
|
|
53
|
-
promoteLongs: false,
|
|
54
|
-
promoteBuffers: false,
|
|
55
|
-
promoteValues: false,
|
|
56
|
-
useBigInt64: false
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
exports.LimitedSizeDocument = LimitedSizeDocument;
|
|
63
|
-
/**
|
|
64
|
-
* From the specs:
|
|
65
|
-
* Implementors SHOULD cumulatively update fields in the following order until the document is under the size limit:
|
|
66
|
-
* 1. Omit fields from `env` except `env.name`.
|
|
67
|
-
* 2. Omit fields from `os` except `os.type`.
|
|
68
|
-
* 3. Omit the `env` document entirely.
|
|
69
|
-
* 4. Truncate `platform`. -- special we do not truncate this field
|
|
70
|
-
*/
|
|
71
|
-
|
|
72
|
-
function makeClientMetadata(options) {
|
|
73
|
-
const metadataDocument = new LimitedSizeDocument(512);
|
|
74
|
-
const {
|
|
75
|
-
appName = ''
|
|
76
|
-
} = options; // Add app name first, it must be sent
|
|
77
|
-
|
|
78
|
-
if (appName.length > 0) {
|
|
79
|
-
const name = Buffer.byteLength(appName, 'utf8') <= 128 ? options.appName : Buffer.from(appName, 'utf8').subarray(0, 128).toString('utf8');
|
|
80
|
-
metadataDocument.ifItFitsItSits('application', {
|
|
81
|
-
name
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
const {
|
|
86
|
-
name = '',
|
|
87
|
-
version = '',
|
|
88
|
-
platform = ''
|
|
89
|
-
} = options.driverInfo;
|
|
90
|
-
const driverInfo = {
|
|
91
|
-
name: name.length > 0 ? `nodejs|${name}` : 'nodejs',
|
|
92
|
-
version: version.length > 0 ? `${NODE_DRIVER_VERSION}|${version}` : NODE_DRIVER_VERSION
|
|
93
|
-
};
|
|
94
|
-
|
|
95
|
-
if (!metadataDocument.ifItFitsItSits('driver', driverInfo)) {
|
|
96
|
-
throw new error_1.MongoInvalidArgumentError('Unable to include driverInfo name and version, metadata cannot exceed 512 bytes');
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
let runtimeInfo = getRuntimeInfo();
|
|
100
|
-
|
|
101
|
-
if (platform.length > 0) {
|
|
102
|
-
runtimeInfo = `${runtimeInfo}|${platform}`;
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
if (!metadataDocument.ifItFitsItSits('platform', runtimeInfo)) {
|
|
106
|
-
throw new error_1.MongoInvalidArgumentError('Unable to include driverInfo platform, metadata cannot exceed 512 bytes');
|
|
107
|
-
} // Note: order matters, os.type is last so it will be removed last if we're at maxSize
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
const osInfo = new Map().set('name', process.platform).set('architecture', process.arch).set('version', os.release()).set('type', os.type());
|
|
111
|
-
|
|
112
|
-
if (!metadataDocument.ifItFitsItSits('os', osInfo)) {
|
|
113
|
-
for (const key of osInfo.keys()) {
|
|
114
|
-
osInfo.delete(key);
|
|
115
|
-
if (osInfo.size === 0) break;
|
|
116
|
-
if (metadataDocument.ifItFitsItSits('os', osInfo)) break;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
const faasEnv = getFAASEnv();
|
|
121
|
-
|
|
122
|
-
if (faasEnv != null) {
|
|
123
|
-
if (!metadataDocument.ifItFitsItSits('env', faasEnv)) {
|
|
124
|
-
for (const key of faasEnv.keys()) {
|
|
125
|
-
faasEnv.delete(key);
|
|
126
|
-
if (faasEnv.size === 0) break;
|
|
127
|
-
if (metadataDocument.ifItFitsItSits('env', faasEnv)) break;
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
return metadataDocument.toObject();
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
let dockerPromise;
|
|
136
|
-
/** @internal */
|
|
137
|
-
|
|
138
|
-
async function getContainerMetadata() {
|
|
139
|
-
const containerMetadata = {};
|
|
140
|
-
dockerPromise ??= (0, utils_1.fileIsAccessible)('/.dockerenv');
|
|
141
|
-
const isDocker = await dockerPromise;
|
|
142
|
-
const {
|
|
143
|
-
KUBERNETES_SERVICE_HOST = ''
|
|
144
|
-
} = process.env;
|
|
145
|
-
const isKubernetes = KUBERNETES_SERVICE_HOST.length > 0 ? true : false;
|
|
146
|
-
if (isDocker) containerMetadata.runtime = 'docker';
|
|
147
|
-
if (isKubernetes) containerMetadata.orchestrator = 'kubernetes';
|
|
148
|
-
return containerMetadata;
|
|
149
|
-
}
|
|
150
|
-
/**
|
|
151
|
-
* @internal
|
|
152
|
-
* Re-add each metadata value.
|
|
153
|
-
* Attempt to add new env container metadata, but keep old data if it does not fit.
|
|
154
|
-
*/
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
async function addContainerMetadata(originalMetadata) {
|
|
158
|
-
const containerMetadata = await getContainerMetadata();
|
|
159
|
-
if (Object.keys(containerMetadata).length === 0) return originalMetadata;
|
|
160
|
-
const extendedMetadata = new LimitedSizeDocument(512);
|
|
161
|
-
const extendedEnvMetadata = { ...originalMetadata?.env,
|
|
162
|
-
container: containerMetadata
|
|
163
|
-
};
|
|
164
|
-
|
|
165
|
-
for (const [key, val] of Object.entries(originalMetadata)) {
|
|
166
|
-
if (key !== 'env') {
|
|
167
|
-
extendedMetadata.ifItFitsItSits(key, val);
|
|
168
|
-
} else {
|
|
169
|
-
if (!extendedMetadata.ifItFitsItSits('env', extendedEnvMetadata)) {
|
|
170
|
-
// add in old data if newer / extended metadata does not fit
|
|
171
|
-
extendedMetadata.ifItFitsItSits('env', val);
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
if (!('env' in originalMetadata)) {
|
|
177
|
-
extendedMetadata.ifItFitsItSits('env', extendedEnvMetadata);
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
return extendedMetadata.toObject();
|
|
181
|
-
}
|
|
182
|
-
/**
|
|
183
|
-
* Collects FaaS metadata.
|
|
184
|
-
* - `name` MUST be the last key in the Map returned.
|
|
185
|
-
*/
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
function getFAASEnv() {
|
|
189
|
-
const {
|
|
190
|
-
AWS_EXECUTION_ENV = '',
|
|
191
|
-
AWS_LAMBDA_RUNTIME_API = '',
|
|
192
|
-
FUNCTIONS_WORKER_RUNTIME = '',
|
|
193
|
-
K_SERVICE = '',
|
|
194
|
-
FUNCTION_NAME = '',
|
|
195
|
-
VERCEL = '',
|
|
196
|
-
AWS_LAMBDA_FUNCTION_MEMORY_SIZE = '',
|
|
197
|
-
AWS_REGION = '',
|
|
198
|
-
FUNCTION_MEMORY_MB = '',
|
|
199
|
-
FUNCTION_REGION = '',
|
|
200
|
-
FUNCTION_TIMEOUT_SEC = '',
|
|
201
|
-
VERCEL_REGION = ''
|
|
202
|
-
} = process.env;
|
|
203
|
-
const isAWSFaaS = AWS_EXECUTION_ENV.startsWith('AWS_Lambda_') || AWS_LAMBDA_RUNTIME_API.length > 0;
|
|
204
|
-
const isAzureFaaS = FUNCTIONS_WORKER_RUNTIME.length > 0;
|
|
205
|
-
const isGCPFaaS = K_SERVICE.length > 0 || FUNCTION_NAME.length > 0;
|
|
206
|
-
const isVercelFaaS = VERCEL.length > 0; // Note: order matters, name must always be the last key
|
|
207
|
-
|
|
208
|
-
const faasEnv = new Map(); // When isVercelFaaS is true so is isAWSFaaS; Vercel inherits the AWS env
|
|
209
|
-
|
|
210
|
-
if (isVercelFaaS && !(isAzureFaaS || isGCPFaaS)) {
|
|
211
|
-
if (VERCEL_REGION.length > 0) {
|
|
212
|
-
faasEnv.set('region', VERCEL_REGION);
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
faasEnv.set('name', 'vercel');
|
|
216
|
-
return faasEnv;
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
if (isAWSFaaS && !(isAzureFaaS || isGCPFaaS || isVercelFaaS)) {
|
|
220
|
-
if (AWS_REGION.length > 0) {
|
|
221
|
-
faasEnv.set('region', AWS_REGION);
|
|
222
|
-
}
|
|
223
|
-
|
|
224
|
-
if (AWS_LAMBDA_FUNCTION_MEMORY_SIZE.length > 0 && Number.isInteger(+AWS_LAMBDA_FUNCTION_MEMORY_SIZE)) {
|
|
225
|
-
faasEnv.set('memory_mb', new bson_1.Int32(AWS_LAMBDA_FUNCTION_MEMORY_SIZE));
|
|
226
|
-
}
|
|
227
|
-
|
|
228
|
-
faasEnv.set('name', 'aws.lambda');
|
|
229
|
-
return faasEnv;
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
if (isAzureFaaS && !(isGCPFaaS || isAWSFaaS || isVercelFaaS)) {
|
|
233
|
-
faasEnv.set('name', 'azure.func');
|
|
234
|
-
return faasEnv;
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
if (isGCPFaaS && !(isAzureFaaS || isAWSFaaS || isVercelFaaS)) {
|
|
238
|
-
if (FUNCTION_REGION.length > 0) {
|
|
239
|
-
faasEnv.set('region', FUNCTION_REGION);
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
if (FUNCTION_MEMORY_MB.length > 0 && Number.isInteger(+FUNCTION_MEMORY_MB)) {
|
|
243
|
-
faasEnv.set('memory_mb', new bson_1.Int32(FUNCTION_MEMORY_MB));
|
|
244
|
-
}
|
|
245
|
-
|
|
246
|
-
if (FUNCTION_TIMEOUT_SEC.length > 0 && Number.isInteger(+FUNCTION_TIMEOUT_SEC)) {
|
|
247
|
-
faasEnv.set('timeout_sec', new bson_1.Int32(FUNCTION_TIMEOUT_SEC));
|
|
248
|
-
}
|
|
249
|
-
|
|
250
|
-
faasEnv.set('name', 'gcp.func');
|
|
251
|
-
return faasEnv;
|
|
252
|
-
}
|
|
253
|
-
|
|
254
|
-
return null;
|
|
255
|
-
}
|
|
256
|
-
/**
|
|
257
|
-
* @internal
|
|
258
|
-
* Get current JavaScript runtime platform
|
|
259
|
-
*
|
|
260
|
-
* NOTE: The version information fetching is intentionally written defensively
|
|
261
|
-
* to avoid having a released driver version that becomes incompatible
|
|
262
|
-
* with a future change to these global objects.
|
|
263
|
-
*/
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
function getRuntimeInfo() {
|
|
267
|
-
if ('Deno' in globalThis) {
|
|
268
|
-
const version = typeof Deno?.version?.deno === 'string' ? Deno?.version?.deno : '0.0.0-unknown';
|
|
269
|
-
return `Deno v${version}, ${os.endianness()}`;
|
|
270
|
-
}
|
|
271
|
-
|
|
272
|
-
if ('Bun' in globalThis) {
|
|
273
|
-
const version = typeof Bun?.version === 'string' ? Bun?.version : '0.0.0-unknown';
|
|
274
|
-
return `Bun v${version}, ${os.endianness()}`;
|
|
275
|
-
}
|
|
276
|
-
|
|
277
|
-
return `Node.js ${process.version}, ${os.endianness()}`;
|
|
278
|
-
}
|