@cloudant/couchbackup 2.9.9-SNAPSHOT.98 → 2.9.9-SNAPSHOT.99
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/.scannerwork/report-task.txt +2 -2
- package/.scannerwork/scanner-report/analysis-warnings.pb +2 -2
- package/.scannerwork/scanner-report/changesets-2.pb +1 -0
- package/.scannerwork/scanner-report/changesets-3.pb +1 -0
- package/.scannerwork/scanner-report/changesets-30.pb +1 -0
- package/.scannerwork/scanner-report/changesets-32.pb +1 -0
- package/.scannerwork/scanner-report/changesets-33.pb +1 -0
- package/.scannerwork/scanner-report/changesets-35.pb +1 -0
- package/.scannerwork/scanner-report/changesets-38.pb +1 -0
- package/.scannerwork/scanner-report/changesets-39.pb +1 -0
- package/.scannerwork/scanner-report/changesets-4.pb +1 -0
- package/.scannerwork/scanner-report/changesets-5.pb +1 -0
- package/.scannerwork/scanner-report/changesets-6.pb +1 -0
- package/.scannerwork/scanner-report/component-1.pb +1 -2
- package/.scannerwork/scanner-report/component-18.pb +1 -1
- package/.scannerwork/scanner-report/component-19.pb +1 -1
- package/.scannerwork/scanner-report/component-2.pb +1 -1
- package/.scannerwork/scanner-report/component-20.pb +1 -1
- package/.scannerwork/scanner-report/component-21.pb +1 -1
- package/.scannerwork/scanner-report/component-22.pb +1 -1
- package/.scannerwork/scanner-report/component-23.pb +1 -1
- package/.scannerwork/scanner-report/component-24.pb +1 -1
- package/.scannerwork/scanner-report/component-25.pb +1 -1
- package/.scannerwork/scanner-report/component-26.pb +1 -1
- package/.scannerwork/scanner-report/component-27.pb +1 -1
- package/.scannerwork/scanner-report/component-28.pb +1 -1
- package/.scannerwork/scanner-report/component-29.pb +1 -1
- package/.scannerwork/scanner-report/component-3.pb +1 -0
- package/.scannerwork/scanner-report/component-30.pb +1 -0
- package/.scannerwork/scanner-report/component-31.pb +1 -1
- package/.scannerwork/scanner-report/component-32.pb +1 -0
- package/.scannerwork/scanner-report/component-33.pb +1 -0
- package/.scannerwork/scanner-report/component-34.pb +1 -1
- package/.scannerwork/scanner-report/component-35.pb +1 -0
- package/.scannerwork/scanner-report/component-37.pb +1 -1
- package/.scannerwork/scanner-report/component-38.pb +1 -0
- package/.scannerwork/scanner-report/component-39.pb +1 -0
- package/.scannerwork/scanner-report/component-4.pb +1 -1
- package/.scannerwork/scanner-report/component-40.pb +1 -0
- package/.scannerwork/scanner-report/component-42.pb +1 -0
- package/.scannerwork/scanner-report/component-43.pb +1 -0
- package/.scannerwork/scanner-report/component-47.pb +1 -0
- package/.scannerwork/scanner-report/component-5.pb +1 -1
- package/.scannerwork/scanner-report/component-50.pb +1 -1
- package/.scannerwork/scanner-report/component-51.pb +1 -1
- package/.scannerwork/scanner-report/component-52.pb +1 -1
- package/.scannerwork/scanner-report/component-53.pb +1 -1
- package/.scannerwork/scanner-report/component-54.pb +1 -1
- package/.scannerwork/scanner-report/component-55.pb +1 -1
- package/.scannerwork/scanner-report/component-56.pb +1 -1
- package/.scannerwork/scanner-report/component-57.pb +1 -1
- package/.scannerwork/scanner-report/component-58.pb +1 -1
- package/.scannerwork/scanner-report/component-59.pb +1 -1
- package/.scannerwork/scanner-report/component-6.pb +1 -1
- package/.scannerwork/scanner-report/component-60.pb +1 -1
- package/.scannerwork/scanner-report/component-61.pb +1 -1
- package/.scannerwork/scanner-report/component-62.pb +1 -1
- package/.scannerwork/scanner-report/component-63.pb +1 -1
- package/.scannerwork/scanner-report/component-64.pb +1 -1
- package/.scannerwork/scanner-report/component-65.pb +1 -1
- package/.scannerwork/scanner-report/component-67.pb +1 -1
- package/.scannerwork/scanner-report/coverages-18.pb +0 -0
- package/.scannerwork/scanner-report/coverages-19.pb +0 -0
- package/.scannerwork/scanner-report/coverages-20.pb +0 -0
- package/.scannerwork/scanner-report/coverages-21.pb +0 -0
- package/.scannerwork/scanner-report/coverages-22.pb +0 -0
- package/.scannerwork/scanner-report/coverages-23.pb +0 -0
- package/.scannerwork/scanner-report/coverages-24.pb +0 -0
- package/.scannerwork/scanner-report/coverages-25.pb +0 -0
- package/.scannerwork/scanner-report/coverages-26.pb +0 -0
- package/.scannerwork/scanner-report/coverages-27.pb +0 -0
- package/.scannerwork/scanner-report/coverages-28.pb +0 -0
- package/.scannerwork/scanner-report/coverages-29.pb +0 -0
- package/.scannerwork/scanner-report/coverages-3.pb +0 -0
- package/.scannerwork/scanner-report/coverages-30.pb +0 -0
- package/.scannerwork/scanner-report/coverages-31.pb +0 -0
- package/.scannerwork/scanner-report/coverages-32.pb +0 -0
- package/.scannerwork/scanner-report/coverages-33.pb +0 -0
- package/.scannerwork/scanner-report/coverages-34.pb +0 -0
- package/.scannerwork/scanner-report/coverages-37.pb +0 -0
- package/.scannerwork/scanner-report/coverages-50.pb +0 -0
- package/.scannerwork/scanner-report/coverages-51.pb +0 -0
- package/.scannerwork/scanner-report/coverages-52.pb +0 -0
- package/.scannerwork/scanner-report/coverages-53.pb +0 -0
- package/.scannerwork/scanner-report/coverages-54.pb +0 -0
- package/.scannerwork/scanner-report/coverages-55.pb +0 -0
- package/.scannerwork/scanner-report/coverages-56.pb +0 -0
- package/.scannerwork/scanner-report/coverages-57.pb +0 -0
- package/.scannerwork/scanner-report/coverages-58.pb +0 -0
- package/.scannerwork/scanner-report/coverages-59.pb +0 -0
- package/.scannerwork/scanner-report/coverages-6.pb +0 -0
- package/.scannerwork/scanner-report/coverages-60.pb +0 -0
- package/.scannerwork/scanner-report/coverages-61.pb +0 -0
- package/.scannerwork/scanner-report/coverages-62.pb +0 -0
- package/.scannerwork/scanner-report/coverages-63.pb +0 -0
- package/.scannerwork/scanner-report/coverages-65.pb +0 -0
- package/.scannerwork/scanner-report/coverages-67.pb +0 -0
- package/.scannerwork/scanner-report/duplications-20.pb +2 -0
- package/.scannerwork/scanner-report/duplications-3.pb +2 -0
- package/.scannerwork/scanner-report/duplications-31.pb +2 -2
- package/.scannerwork/scanner-report/duplications-32.pb +3 -0
- package/.scannerwork/scanner-report/duplications-33.pb +3 -0
- package/.scannerwork/scanner-report/duplications-34.pb +0 -2
- package/.scannerwork/scanner-report/duplications-5.pb +3 -0
- package/.scannerwork/scanner-report/duplications-50.pb +0 -3
- package/.scannerwork/scanner-report/duplications-51.pb +2 -0
- package/.scannerwork/scanner-report/duplications-54.pb +2 -0
- package/.scannerwork/scanner-report/duplications-60.pb +0 -2
- package/.scannerwork/scanner-report/duplications-62.pb +0 -3
- package/.scannerwork/scanner-report/duplications-65.pb +2 -0
- package/.scannerwork/scanner-report/duplications-67.pb +2 -2
- package/.scannerwork/scanner-report/measures-18.pb +0 -0
- package/.scannerwork/scanner-report/measures-19.pb +0 -0
- package/.scannerwork/scanner-report/measures-2.pb +0 -0
- package/.scannerwork/scanner-report/measures-20.pb +0 -0
- package/.scannerwork/scanner-report/measures-21.pb +0 -0
- package/.scannerwork/scanner-report/measures-22.pb +0 -0
- package/.scannerwork/scanner-report/measures-23.pb +0 -0
- package/.scannerwork/scanner-report/measures-24.pb +0 -0
- package/.scannerwork/scanner-report/measures-25.pb +0 -0
- package/.scannerwork/scanner-report/measures-26.pb +0 -0
- package/.scannerwork/scanner-report/measures-27.pb +0 -0
- package/.scannerwork/scanner-report/measures-28.pb +0 -0
- package/.scannerwork/scanner-report/measures-29.pb +0 -0
- package/.scannerwork/scanner-report/measures-3.pb +0 -0
- package/.scannerwork/scanner-report/measures-30.pb +0 -0
- package/.scannerwork/scanner-report/measures-31.pb +0 -0
- package/.scannerwork/scanner-report/measures-32.pb +0 -0
- package/.scannerwork/scanner-report/measures-33.pb +0 -0
- package/.scannerwork/scanner-report/measures-34.pb +0 -0
- package/.scannerwork/scanner-report/measures-37.pb +0 -0
- package/.scannerwork/scanner-report/measures-4.pb +0 -0
- package/.scannerwork/scanner-report/measures-42.pb +0 -0
- package/.scannerwork/scanner-report/measures-43.pb +0 -0
- package/.scannerwork/scanner-report/measures-47.pb +0 -0
- package/.scannerwork/scanner-report/measures-5.pb +0 -0
- package/.scannerwork/scanner-report/measures-50.pb +0 -0
- package/.scannerwork/scanner-report/measures-51.pb +0 -0
- package/.scannerwork/scanner-report/measures-52.pb +0 -0
- package/.scannerwork/scanner-report/measures-53.pb +0 -0
- package/.scannerwork/scanner-report/measures-54.pb +0 -0
- package/.scannerwork/scanner-report/measures-55.pb +0 -0
- package/.scannerwork/scanner-report/measures-56.pb +0 -0
- package/.scannerwork/scanner-report/measures-57.pb +0 -0
- package/.scannerwork/scanner-report/measures-58.pb +0 -0
- package/.scannerwork/scanner-report/measures-59.pb +0 -0
- package/.scannerwork/scanner-report/measures-6.pb +0 -0
- package/.scannerwork/scanner-report/measures-60.pb +0 -0
- package/.scannerwork/scanner-report/measures-61.pb +0 -0
- package/.scannerwork/scanner-report/measures-62.pb +0 -0
- package/.scannerwork/scanner-report/measures-63.pb +0 -0
- package/.scannerwork/scanner-report/measures-64.pb +0 -0
- package/.scannerwork/scanner-report/measures-65.pb +0 -0
- package/.scannerwork/scanner-report/measures-67.pb +0 -0
- package/.scannerwork/scanner-report/metadata.pb +0 -0
- package/.scannerwork/scanner-report/source-18.txt +18 -160
- package/.scannerwork/scanner-report/source-19.txt +19 -39
- package/.scannerwork/scanner-report/source-2.txt +418 -509
- package/.scannerwork/scanner-report/source-20.txt +269 -105
- package/.scannerwork/scanner-report/source-21.txt +20 -30
- package/.scannerwork/scanner-report/source-22.txt +48 -89
- package/.scannerwork/scanner-report/source-23.txt +352 -97
- package/.scannerwork/scanner-report/source-24.txt +19 -25
- package/.scannerwork/scanner-report/source-25.txt +46 -58
- package/.scannerwork/scanner-report/source-26.txt +12 -75
- package/.scannerwork/scanner-report/source-27.txt +49 -145
- package/.scannerwork/scanner-report/source-28.txt +126 -251
- package/.scannerwork/scanner-report/source-29.txt +31 -15
- package/.scannerwork/scanner-report/source-3.txt +225 -0
- package/.scannerwork/scanner-report/source-30.txt +147 -0
- package/.scannerwork/scanner-report/source-31.txt +122 -152
- package/.scannerwork/scanner-report/source-32.txt +119 -0
- package/.scannerwork/scanner-report/source-33.txt +244 -0
- package/.scannerwork/scanner-report/source-34.txt +124 -172
- package/.scannerwork/scanner-report/source-37.txt +61 -126
- package/.scannerwork/scanner-report/source-4.txt +625 -509
- package/.scannerwork/scanner-report/{source-12.txt → source-40.txt} +50 -50
- package/.scannerwork/scanner-report/source-42.txt +509 -0
- package/.scannerwork/scanner-report/source-43.txt +509 -0
- package/.scannerwork/scanner-report/source-47.txt +509 -0
- package/.scannerwork/scanner-report/source-5.txt +131 -509
- package/.scannerwork/scanner-report/source-50.txt +246 -209
- package/.scannerwork/scanner-report/source-51.txt +78 -352
- package/.scannerwork/scanner-report/source-52.txt +22 -49
- package/.scannerwork/scanner-report/source-53.txt +115 -22
- package/.scannerwork/scanner-report/source-54.txt +58 -30
- package/.scannerwork/scanner-report/source-55.txt +27 -49
- package/.scannerwork/scanner-report/source-56.txt +39 -14
- package/.scannerwork/scanner-report/source-57.txt +93 -82
- package/.scannerwork/scanner-report/source-58.txt +89 -21
- package/.scannerwork/scanner-report/source-59.txt +17 -142
- package/.scannerwork/scanner-report/source-6.txt +100 -509
- package/.scannerwork/scanner-report/source-60.txt +145 -126
- package/.scannerwork/scanner-report/source-61.txt +65 -19
- package/.scannerwork/scanner-report/source-62.txt +154 -95
- package/.scannerwork/scanner-report/source-63.txt +104 -49
- package/.scannerwork/scanner-report/source-64.txt +509 -131
- package/.scannerwork/scanner-report/source-65.txt +153 -125
- package/.scannerwork/scanner-report/source-67.txt +161 -196
- package/.scannerwork/scanner-report/symbols-18.pb +14 -144
- package/.scannerwork/scanner-report/symbols-19.pb +9 -14
- package/.scannerwork/scanner-report/symbols-20.pb +486 -33
- package/.scannerwork/scanner-report/symbols-21.pb +11 -20
- package/.scannerwork/scanner-report/symbols-22.pb +41 -40
- package/.scannerwork/scanner-report/symbols-23.pb +494 -59
- package/.scannerwork/scanner-report/symbols-24.pb +16 -17
- package/.scannerwork/scanner-report/symbols-25.pb +33 -43
- package/.scannerwork/scanner-report/symbols-26.pb +9 -44
- package/.scannerwork/scanner-report/symbols-27.pb +45 -126
- package/.scannerwork/scanner-report/symbols-28.pb +110 -352
- package/.scannerwork/scanner-report/symbols-29.pb +27 -14
- package/.scannerwork/scanner-report/symbols-3.pb +418 -0
- package/.scannerwork/scanner-report/symbols-30.pb +85 -0
- package/.scannerwork/scanner-report/symbols-31.pb +101 -152
- package/.scannerwork/scanner-report/symbols-32.pb +77 -0
- package/.scannerwork/scanner-report/symbols-33.pb +394 -0
- package/.scannerwork/scanner-report/symbols-34.pb +115 -179
- package/.scannerwork/scanner-report/symbols-37.pb +30 -116
- package/.scannerwork/scanner-report/symbols-50.pb +302 -342
- package/.scannerwork/scanner-report/symbols-51.pb +44 -494
- package/.scannerwork/scanner-report/symbols-52.pb +17 -44
- package/.scannerwork/scanner-report/symbols-53.pb +33 -14
- package/.scannerwork/scanner-report/symbols-54.pb +41 -26
- package/.scannerwork/scanner-report/symbols-55.pb +19 -35
- package/.scannerwork/scanner-report/symbols-56.pb +15 -9
- package/.scannerwork/scanner-report/symbols-57.pb +58 -68
- package/.scannerwork/scanner-report/symbols-58.pb +42 -11
- package/.scannerwork/scanner-report/symbols-59.pb +12 -110
- package/.scannerwork/scanner-report/symbols-6.pb +69 -0
- package/.scannerwork/scanner-report/symbols-60.pb +118 -94
- package/.scannerwork/scanner-report/symbols-61.pb +45 -9
- package/.scannerwork/scanner-report/symbols-62.pb +141 -74
- package/.scannerwork/scanner-report/symbols-63.pb +29 -42
- package/.scannerwork/scanner-report/symbols-65.pb +153 -85
- package/.scannerwork/scanner-report/symbols-67.pb +178 -416
- package/.scannerwork/scanner-report/syntax-highlightings-18.pb +22 -211
- package/.scannerwork/scanner-report/syntax-highlightings-19.pb +21 -25
- package/.scannerwork/scanner-report/syntax-highlightings-2.pb +445 -3545
- package/.scannerwork/scanner-report/syntax-highlightings-20.pb +621 -91
- package/.scannerwork/scanner-report/syntax-highlightings-21.pb +29 -34
- package/.scannerwork/scanner-report/syntax-highlightings-22.pb +52 -86
- package/.scannerwork/scanner-report/syntax-highlightings-23.pb +594 -97
- package/.scannerwork/scanner-report/syntax-highlightings-24.pb +33 -20
- package/.scannerwork/scanner-report/syntax-highlightings-25.pb +60 -60
- package/.scannerwork/scanner-report/syntax-highlightings-26.pb +15 -57
- package/.scannerwork/scanner-report/syntax-highlightings-27.pb +74 -177
- package/.scannerwork/scanner-report/syntax-highlightings-28.pb +153 -215
- package/.scannerwork/scanner-report/syntax-highlightings-29.pb +38 -15
- package/.scannerwork/scanner-report/syntax-highlightings-3.pb +331 -0
- package/.scannerwork/scanner-report/syntax-highlightings-30.pb +191 -0
- package/.scannerwork/scanner-report/syntax-highlightings-31.pb +196 -183
- package/.scannerwork/scanner-report/syntax-highlightings-32.pb +158 -0
- package/.scannerwork/scanner-report/syntax-highlightings-33.pb +329 -0
- package/.scannerwork/scanner-report/syntax-highlightings-34.pb +94 -185
- package/.scannerwork/scanner-report/syntax-highlightings-37.pb +82 -113
- package/.scannerwork/scanner-report/syntax-highlightings-4.pb +536 -3397
- package/.scannerwork/scanner-report/{syntax-highlightings-12.pb → syntax-highlightings-40.pb} +24 -25
- package/.scannerwork/scanner-report/syntax-highlightings-42.pb +3748 -0
- package/.scannerwork/scanner-report/syntax-highlightings-43.pb +3749 -0
- package/.scannerwork/scanner-report/syntax-highlightings-47.pb +3748 -0
- package/.scannerwork/scanner-report/syntax-highlightings-5.pb +171 -3736
- package/.scannerwork/scanner-report/syntax-highlightings-50.pb +173 -217
- package/.scannerwork/scanner-report/syntax-highlightings-51.pb +57 -597
- package/.scannerwork/scanner-report/syntax-highlightings-52.pb +21 -81
- package/.scannerwork/scanner-report/syntax-highlightings-53.pb +97 -22
- package/.scannerwork/scanner-report/syntax-highlightings-54.pb +44 -34
- package/.scannerwork/scanner-report/syntax-highlightings-55.pb +34 -65
- package/.scannerwork/scanner-report/syntax-highlightings-56.pb +25 -19
- package/.scannerwork/scanner-report/syntax-highlightings-57.pb +94 -66
- package/.scannerwork/scanner-report/syntax-highlightings-58.pb +87 -30
- package/.scannerwork/scanner-report/syntax-highlightings-59.pb +15 -193
- package/.scannerwork/scanner-report/syntax-highlightings-6.pb +94 -3736
- package/.scannerwork/scanner-report/syntax-highlightings-60.pb +160 -174
- package/.scannerwork/scanner-report/syntax-highlightings-61.pb +63 -18
- package/.scannerwork/scanner-report/syntax-highlightings-62.pb +204 -119
- package/.scannerwork/scanner-report/syntax-highlightings-63.pb +84 -53
- package/.scannerwork/scanner-report/syntax-highlightings-64.pb +3736 -171
- package/.scannerwork/scanner-report/syntax-highlightings-65.pb +173 -150
- package/.scannerwork/scanner-report/syntax-highlightings-67.pb +170 -276
- package/package.json +2 -2
- package/test-14-results.xml +153 -153
- package/test-16-results.xml +146 -146
- package/test-18-results.xml +165 -165
- package/test-19-results.xml +158 -158
- package/test-iam-18-results.xml +50 -50
- package/.scannerwork/scanner-report/changesets-10.pb +0 -2
- package/.scannerwork/scanner-report/changesets-11.pb +0 -1
- package/.scannerwork/scanner-report/changesets-14.pb +0 -1
- package/.scannerwork/scanner-report/changesets-16.pb +0 -1
- package/.scannerwork/scanner-report/changesets-17.pb +0 -1
- package/.scannerwork/scanner-report/changesets-36.pb +0 -1
- package/.scannerwork/scanner-report/changesets-49.pb +0 -1
- package/.scannerwork/scanner-report/changesets-64.pb +0 -1
- package/.scannerwork/scanner-report/changesets-66.pb +0 -1
- package/.scannerwork/scanner-report/changesets-68.pb +0 -1
- package/.scannerwork/scanner-report/changesets-69.pb +0 -1
- package/.scannerwork/scanner-report/component-10.pb +0 -2
- package/.scannerwork/scanner-report/component-11.pb +0 -1
- package/.scannerwork/scanner-report/component-12.pb +0 -1
- package/.scannerwork/scanner-report/component-14.pb +0 -1
- package/.scannerwork/scanner-report/component-16.pb +0 -1
- package/.scannerwork/scanner-report/component-17.pb +0 -1
- package/.scannerwork/scanner-report/component-36.pb +0 -1
- package/.scannerwork/scanner-report/component-49.pb +0 -1
- package/.scannerwork/scanner-report/component-66.pb +0 -1
- package/.scannerwork/scanner-report/component-68.pb +0 -1
- package/.scannerwork/scanner-report/component-69.pb +0 -1
- package/.scannerwork/scanner-report/coverages-10.pb +0 -0
- package/.scannerwork/scanner-report/coverages-16.pb +0 -0
- package/.scannerwork/scanner-report/coverages-17.pb +0 -0
- package/.scannerwork/scanner-report/coverages-49.pb +0 -0
- package/.scannerwork/scanner-report/coverages-69.pb +0 -0
- package/.scannerwork/scanner-report/duplications-17.pb +0 -2
- package/.scannerwork/scanner-report/duplications-26.pb +0 -2
- package/.scannerwork/scanner-report/duplications-64.pb +0 -3
- package/.scannerwork/scanner-report/duplications-69.pb +0 -2
- package/.scannerwork/scanner-report/measures-10.pb +0 -0
- package/.scannerwork/scanner-report/measures-16.pb +0 -0
- package/.scannerwork/scanner-report/measures-17.pb +0 -0
- package/.scannerwork/scanner-report/measures-36.pb +0 -0
- package/.scannerwork/scanner-report/measures-49.pb +0 -0
- package/.scannerwork/scanner-report/measures-66.pb +0 -0
- package/.scannerwork/scanner-report/measures-69.pb +0 -15
- package/.scannerwork/scanner-report/source-10.txt +0 -77
- package/.scannerwork/scanner-report/source-16.txt +0 -118
- package/.scannerwork/scanner-report/source-17.txt +0 -75
- package/.scannerwork/scanner-report/source-36.txt +0 -418
- package/.scannerwork/scanner-report/source-49.txt +0 -35
- package/.scannerwork/scanner-report/source-66.txt +0 -625
- package/.scannerwork/scanner-report/source-69.txt +0 -293
- package/.scannerwork/scanner-report/symbols-10.pb +0 -30
- package/.scannerwork/scanner-report/symbols-16.pb +0 -30
- package/.scannerwork/scanner-report/symbols-17.pb +0 -42
- package/.scannerwork/scanner-report/symbols-49.pb +0 -17
- package/.scannerwork/scanner-report/symbols-69.pb +0 -486
- package/.scannerwork/scanner-report/syntax-highlightings-10.pb +0 -103
- package/.scannerwork/scanner-report/syntax-highlightings-16.pb +0 -113
- package/.scannerwork/scanner-report/syntax-highlightings-17.pb +0 -78
- package/.scannerwork/scanner-report/syntax-highlightings-36.pb +0 -648
- package/.scannerwork/scanner-report/syntax-highlightings-49.pb +0 -63
- package/.scannerwork/scanner-report/syntax-highlightings-66.pb +0 -887
- package/.scannerwork/scanner-report/syntax-highlightings-69.pb +0 -659
- /package/.scannerwork/scanner-report/{coverages-36.pb → coverages-2.pb} +0 -0
- /package/.scannerwork/scanner-report/{coverages-68.pb → coverages-35.pb} +0 -0
- /package/.scannerwork/scanner-report/{coverages-11.pb → coverages-38.pb} +0 -0
- /package/.scannerwork/scanner-report/{coverages-14.pb → coverages-39.pb} +0 -0
- /package/.scannerwork/scanner-report/{coverages-66.pb → coverages-4.pb} +0 -0
- /package/.scannerwork/scanner-report/{coverages-64.pb → coverages-5.pb} +0 -0
- /package/.scannerwork/scanner-report/{duplications-10.pb → duplications-2.pb} +0 -0
- /package/.scannerwork/scanner-report/{duplications-11.pb → duplications-30.pb} +0 -0
- /package/.scannerwork/scanner-report/{duplications-14.pb → duplications-35.pb} +0 -0
- /package/.scannerwork/scanner-report/{duplications-16.pb → duplications-38.pb} +0 -0
- /package/.scannerwork/scanner-report/{duplications-36.pb → duplications-39.pb} +0 -0
- /package/.scannerwork/scanner-report/{duplications-49.pb → duplications-4.pb} +0 -0
- /package/.scannerwork/scanner-report/{duplications-66.pb → duplications-56.pb} +0 -0
- /package/.scannerwork/scanner-report/{duplications-68.pb → duplications-6.pb} +0 -0
- /package/.scannerwork/scanner-report/{issues-51.pb → issues-23.pb} +0 -0
- /package/.scannerwork/scanner-report/{issues-54.pb → issues-29.pb} +0 -0
- /package/.scannerwork/scanner-report/{issues-50.pb → issues-33.pb} +0 -0
- /package/.scannerwork/scanner-report/{issues-37.pb → issues-34.pb} +0 -0
- /package/.scannerwork/scanner-report/{measures-68.pb → measures-35.pb} +0 -0
- /package/.scannerwork/scanner-report/{measures-11.pb → measures-38.pb} +0 -0
- /package/.scannerwork/scanner-report/{measures-14.pb → measures-39.pb} +0 -0
- /package/.scannerwork/scanner-report/{measures-12.pb → measures-40.pb} +0 -0
- /package/.scannerwork/scanner-report/{source-68.txt → source-35.txt} +0 -0
- /package/.scannerwork/scanner-report/{source-11.txt → source-38.txt} +0 -0
- /package/.scannerwork/scanner-report/{source-14.txt → source-39.txt} +0 -0
- /package/.scannerwork/scanner-report/{symbols-36.pb → symbols-2.pb} +0 -0
- /package/.scannerwork/scanner-report/{symbols-68.pb → symbols-35.pb} +0 -0
- /package/.scannerwork/scanner-report/{symbols-11.pb → symbols-38.pb} +0 -0
- /package/.scannerwork/scanner-report/{symbols-14.pb → symbols-39.pb} +0 -0
- /package/.scannerwork/scanner-report/{symbols-66.pb → symbols-4.pb} +0 -0
- /package/.scannerwork/scanner-report/{symbols-64.pb → symbols-5.pb} +0 -0
- /package/.scannerwork/scanner-report/{syntax-highlightings-68.pb → syntax-highlightings-35.pb} +0 -0
- /package/.scannerwork/scanner-report/{syntax-highlightings-11.pb → syntax-highlightings-38.pb} +0 -0
- /package/.scannerwork/scanner-report/{syntax-highlightings-14.pb → syntax-highlightings-39.pb} +0 -0
|
@@ -11,271 +11,146 @@
|
|
|
11
11
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
12
|
// See the License for the specific language governing permissions and
|
|
13
13
|
// limitations under the License.
|
|
14
|
+
|
|
15
|
+
/* global describe it */
|
|
14
16
|
'use strict';
|
|
15
17
|
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
const
|
|
20
|
-
const spoolchanges = require('./spoolchanges.js');
|
|
21
|
-
const logfilesummary = require('./logfilesummary.js');
|
|
22
|
-
const logfilegetbatches = require('./logfilegetbatches.js');
|
|
18
|
+
const assert = require('assert');
|
|
19
|
+
const nock = require('nock');
|
|
20
|
+
const request = require('../includes/request.js');
|
|
21
|
+
const changes = require('../includes/spoolchanges.js');
|
|
23
22
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
* @param {string} db - `@cloudant/cloudant` DB object for source database.
|
|
28
|
-
* @param {number} blocksize - number of documents to download in single request
|
|
29
|
-
* @param {number} parallelism - number of concurrent downloads
|
|
30
|
-
* @param {string} log - path to log file to use
|
|
31
|
-
* @param {boolean} resume - whether to resume from an existing log file
|
|
32
|
-
* @returns EventEmitter with following events:
|
|
33
|
-
* - `received` - called with a block of documents to write to backup
|
|
34
|
-
* - `error` - on error
|
|
35
|
-
* - `finished` - when backup process is finished (either complete or errored)
|
|
36
|
-
*/
|
|
37
|
-
module.exports = function(db, options) {
|
|
38
|
-
const ee = new events.EventEmitter();
|
|
39
|
-
const start = new Date().getTime(); // backup start time
|
|
40
|
-
const batchesPerDownloadSession = 50; // max batches to read from log file for download at a time (prevent OOM)
|
|
23
|
+
const url = 'http://localhost:7777';
|
|
24
|
+
const dbName = 'fakenockdb';
|
|
25
|
+
const longTestTimeout = 3000;
|
|
41
26
|
|
|
42
|
-
|
|
43
|
-
if (options.resume) {
|
|
44
|
-
// pick up from existing log file from previous run
|
|
45
|
-
downloadRemainingBatches(options.log, db, ee, start, batchesPerDownloadSession, options.parallelism);
|
|
46
|
-
} else {
|
|
47
|
-
// create new log file and process
|
|
48
|
-
spoolchanges(db, options.log, options.bufferSize, ee, function(err) {
|
|
49
|
-
if (err) {
|
|
50
|
-
ee.emit('error', err);
|
|
51
|
-
} else {
|
|
52
|
-
downloadRemainingBatches(options.log, db, ee, start, batchesPerDownloadSession, options.parallelism);
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
}
|
|
27
|
+
const db = request.client(`${url}/${dbName}`, { parallelism: 1 });
|
|
57
28
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
29
|
+
const seqSuffix = Buffer.alloc(124, 'abc123').toString('base64');
|
|
30
|
+
function provideChanges(batchSize, totalChanges, fullResponse = false) {
|
|
31
|
+
let pending = totalChanges;
|
|
32
|
+
const sparseResultsArray = Array(batchSize).fill({
|
|
33
|
+
seq: null,
|
|
34
|
+
id: 'doc',
|
|
35
|
+
changes: [{ rev: '1-abcdef0123456789abcdef0123456789' }]
|
|
64
36
|
});
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
}
|
|
37
|
+
nock(url)
|
|
38
|
+
.post(`/${dbName}/_changes`)
|
|
39
|
+
.query(true)
|
|
40
|
+
.times(totalChanges / batchSize + (totalChanges % batchSize > 0 ? 1 : 0))
|
|
41
|
+
.reply(200, (uri, requestBody) => {
|
|
42
|
+
pending -= batchSize;
|
|
43
|
+
const lastSeq = (totalChanges - pending);
|
|
44
|
+
const seq = lastSeq - batchSize;
|
|
45
|
+
return {
|
|
46
|
+
results: fullResponse
|
|
47
|
+
? Array.from(Array(batchSize), (_, i) => {
|
|
48
|
+
return {
|
|
49
|
+
seq: `${seq + i}-${seqSuffix}`,
|
|
50
|
+
id: `doc${seq + i}`,
|
|
51
|
+
changes: [{ rev: '1-abcdef0123456789abcdef0123456789' }]
|
|
52
|
+
};
|
|
53
|
+
})
|
|
54
|
+
: sparseResultsArray,
|
|
55
|
+
pending: pending,
|
|
56
|
+
last_seq: `${lastSeq}-abc`
|
|
57
|
+
};
|
|
87
58
|
});
|
|
88
|
-
callback(err);
|
|
89
|
-
});
|
|
90
59
|
}
|
|
91
60
|
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
* (err, {batches: batch, docs: doccount}) {@see spoolchanges}.
|
|
106
|
-
*/
|
|
107
|
-
function downloadRemainingBatches(log, db, ee, startTime, batchesPerDownloadSession, parallelism) {
|
|
108
|
-
let total = 0; // running total of documents downloaded so far
|
|
109
|
-
let noRemainingBatches = false;
|
|
110
|
-
|
|
111
|
-
// Generate a set of batches (up to batchesPerDownloadSession) to download from the
|
|
112
|
-
// log file and download them. Set noRemainingBatches to `true` for last batch.
|
|
113
|
-
function downloadSingleBatchSet(done) {
|
|
114
|
-
// Fetch the doc IDs for the batches in the current set to
|
|
115
|
-
// download them.
|
|
116
|
-
function batchSetComplete(err, data) {
|
|
117
|
-
if (!err) {
|
|
118
|
-
total = data.total;
|
|
119
|
-
}
|
|
120
|
-
done(err);
|
|
121
|
-
}
|
|
122
|
-
function processRetrievedBatches(err, batches) {
|
|
123
|
-
if (!err) {
|
|
124
|
-
// process them in parallelised queue
|
|
125
|
-
processBatchSet(db, parallelism, log, batches, ee, startTime, total, batchSetComplete);
|
|
126
|
-
} else {
|
|
127
|
-
batchSetComplete(err);
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
readBatchSetIdsFromLogFile(log, batchesPerDownloadSession, function(err, batchSetIds) {
|
|
132
|
-
if (err) {
|
|
133
|
-
ee.emit('error', err);
|
|
134
|
-
// Stop processing changes file for fatal errors
|
|
135
|
-
noRemainingBatches = true;
|
|
136
|
-
done();
|
|
137
|
-
} else {
|
|
138
|
-
if (batchSetIds.length === 0) {
|
|
139
|
-
noRemainingBatches = true;
|
|
140
|
-
return done();
|
|
141
|
-
}
|
|
142
|
-
logfilegetbatches(log, batchSetIds, processRetrievedBatches);
|
|
143
|
-
}
|
|
61
|
+
describe('#unit Check spool changes', function() {
|
|
62
|
+
it('should terminate on request error', function(done) {
|
|
63
|
+
nock(url)
|
|
64
|
+
.post(`/${dbName}/_changes`)
|
|
65
|
+
.query(true)
|
|
66
|
+
.times(3)
|
|
67
|
+
.replyWithError({ code: 'ECONNRESET', message: 'socket hang up' });
|
|
68
|
+
|
|
69
|
+
changes(db, '/dev/null', 500, null, function(err) {
|
|
70
|
+
assert.strictEqual(err.name, 'SpoolChangesError');
|
|
71
|
+
assert.strictEqual(err.message, `Failed changes request - socket hang up: post ${url}/${dbName}/_changes`);
|
|
72
|
+
assert.ok(nock.isDone());
|
|
73
|
+
done();
|
|
144
74
|
});
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
/**
|
|
158
|
-
* Return a set of uncompleted download batch IDs from the log file.
|
|
159
|
-
*
|
|
160
|
-
* @param {string} log - log file path
|
|
161
|
-
* @param {number} batchesPerDownloadSession - maximum IDs to return
|
|
162
|
-
* @param {function} callback - sign (err, batchSetIds array)
|
|
163
|
-
*/
|
|
164
|
-
function readBatchSetIdsFromLogFile(log, batchesPerDownloadSession, callback) {
|
|
165
|
-
logfilesummary(log, function processSummary(err, summary) {
|
|
166
|
-
if (!err) {
|
|
167
|
-
if (!summary.changesComplete) {
|
|
168
|
-
callback(new error.BackupError('IncompleteChangesInLogFile',
|
|
169
|
-
'WARNING: Changes did not finish spooling'));
|
|
170
|
-
return;
|
|
171
|
-
}
|
|
172
|
-
if (Object.keys(summary.batches).length === 0) {
|
|
173
|
-
return callback(null, []);
|
|
174
|
-
}
|
|
75
|
+
}).timeout(longTestTimeout);
|
|
76
|
+
|
|
77
|
+
it('should terminate on bad HTTP status code response', function(done) {
|
|
78
|
+
nock(url)
|
|
79
|
+
.post(`/${dbName}/_changes`)
|
|
80
|
+
.query(true)
|
|
81
|
+
.times(3)
|
|
82
|
+
.reply(500, function(uri, requestBody) {
|
|
83
|
+
this.req.response.statusMessage = 'Internal Server Error';
|
|
84
|
+
return { error: 'foo', reason: 'bar' };
|
|
85
|
+
});
|
|
175
86
|
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
}
|
|
87
|
+
changes(db, '/dev/null', 500, null, function(err) {
|
|
88
|
+
assert.strictEqual(err.name, 'HTTPFatalError');
|
|
89
|
+
assert.strictEqual(err.message, `500 Internal Server Error: post ${url}/${dbName}/_changes - Error: foo, Reason: bar`);
|
|
90
|
+
assert.ok(nock.isDone());
|
|
91
|
+
done();
|
|
92
|
+
});
|
|
93
|
+
}).timeout(longTestTimeout);
|
|
94
|
+
|
|
95
|
+
it('should keep collecting changes', function(done) {
|
|
96
|
+
// This test validates that spooling will correctly
|
|
97
|
+
// continue across multiple requests
|
|
98
|
+
// (4 batches of 100000 to be precise).
|
|
99
|
+
// This test might take up to 10 seconds
|
|
100
|
+
this.timeout(10 * 1000);
|
|
101
|
+
|
|
102
|
+
// Use full changes for this test
|
|
103
|
+
provideChanges(100000, 400000, true);
|
|
104
|
+
changes(db, '/dev/null', 500, null, function(err) {
|
|
105
|
+
assert.ok(!err);
|
|
106
|
+
assert.ok(nock.isDone());
|
|
107
|
+
done();
|
|
108
|
+
});
|
|
182
109
|
});
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
/**
|
|
186
|
-
* Download a set of batches retrieved from a log file. When a download is
|
|
187
|
-
* complete, add a line to the logfile indicating such.
|
|
188
|
-
*
|
|
189
|
-
* @param {any} db - nodejs-cloudant database
|
|
190
|
-
* @param {any} parallelism - number of concurrent requests to make
|
|
191
|
-
* @param {any} log - log file to drive downloads from
|
|
192
|
-
* @param {any} batches - batches to download
|
|
193
|
-
* @param {any} ee - event emitter for progress. This funciton emits
|
|
194
|
-
* received and error events.
|
|
195
|
-
* @param {any} start - time backup started, to report deltas
|
|
196
|
-
* @param {any} grandtotal - count of documents downloaded prior to this set
|
|
197
|
-
* of batches
|
|
198
|
-
* @param {any} callback - completion callback, (err, {total: number}).
|
|
199
|
-
*/
|
|
200
|
-
function processBatchSet(db, parallelism, log, batches, ee, start, grandtotal, callback) {
|
|
201
|
-
let hasErrored = false;
|
|
202
|
-
let total = grandtotal;
|
|
203
|
-
|
|
204
|
-
// queue to process the fetch requests in an orderly fashion using _bulk_get
|
|
205
|
-
const q = async.queue(function(payload, done) {
|
|
206
|
-
const output = [];
|
|
207
|
-
const thisBatch = payload.batch;
|
|
208
|
-
delete payload.batch;
|
|
209
|
-
delete payload.command;
|
|
210
110
|
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
batch: thisBatch,
|
|
239
|
-
data: output,
|
|
240
|
-
length: output.length,
|
|
241
|
-
time: t,
|
|
242
|
-
total: total
|
|
243
|
-
}, q, logCompletedBatch);
|
|
244
|
-
}).catch(err => {
|
|
245
|
-
if (!hasErrored) {
|
|
246
|
-
hasErrored = true;
|
|
247
|
-
err = error.convertResponseError(err);
|
|
248
|
-
// Kill the queue for fatal errors
|
|
249
|
-
q.kill();
|
|
250
|
-
ee.emit('error', err);
|
|
251
|
-
}
|
|
111
|
+
it('should keep collecting sparse changes', function(done) {
|
|
112
|
+
// This test checks that making thousands of requests doesn't
|
|
113
|
+
// make anything bad happen.
|
|
114
|
+
// This test might take up to 25 seconds
|
|
115
|
+
this.timeout(25 * 1000);
|
|
116
|
+
// Use sparse changes for this test and a batch size of 1
|
|
117
|
+
provideChanges(1, 2500);
|
|
118
|
+
changes(db, '/dev/null', 500, null, function(err) {
|
|
119
|
+
assert.ok(!err);
|
|
120
|
+
assert.ok(nock.isDone());
|
|
121
|
+
done();
|
|
122
|
+
});
|
|
123
|
+
});
|
|
124
|
+
});
|
|
125
|
+
|
|
126
|
+
describe('Longer spool changes checks', function() {
|
|
127
|
+
it('#slow should keep collecting changes (25M)', function(done) {
|
|
128
|
+
// This test might take up to 5 minutes
|
|
129
|
+
this.timeout(5 * 60 * 1000);
|
|
130
|
+
// Note changes spooling uses a constant batch size, we are setting
|
|
131
|
+
// a test value here and setting the buffer to match
|
|
132
|
+
const batch = 100000;
|
|
133
|
+
// Use sparse changes for this test
|
|
134
|
+
provideChanges(batch, 25000000);
|
|
135
|
+
changes(db, '/dev/null', batch, null, function(err) {
|
|
136
|
+
assert.ok(!err);
|
|
137
|
+
assert.ok(nock.isDone());
|
|
252
138
|
done();
|
|
253
139
|
});
|
|
254
|
-
}, parallelism);
|
|
255
|
-
|
|
256
|
-
for (const i in batches) {
|
|
257
|
-
q.push(batches[i]);
|
|
258
|
-
}
|
|
259
|
-
|
|
260
|
-
q.drain(function() {
|
|
261
|
-
callback(null, { total: total });
|
|
262
140
|
});
|
|
263
|
-
}
|
|
264
141
|
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
*
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
return batchestofetch;
|
|
281
|
-
}
|
|
142
|
+
it('#slower should keep collecting changes (500M)', function(done) {
|
|
143
|
+
// This test might take up to 90 minutes
|
|
144
|
+
this.timeout(90 * 60 * 1000);
|
|
145
|
+
// Note changes spooling uses a constant batch size, we are setting
|
|
146
|
+
// a test value here and setting the buffer to match
|
|
147
|
+
const batch = 1000000;
|
|
148
|
+
// Use full changes for this test to exercise load
|
|
149
|
+
provideChanges(batch, 500000000, true);
|
|
150
|
+
changes(db, '/dev/null', batch, null, function(err) {
|
|
151
|
+
assert.ok(!err);
|
|
152
|
+
assert.ok(nock.isDone());
|
|
153
|
+
done();
|
|
154
|
+
});
|
|
155
|
+
});
|
|
156
|
+
});
|
|
@@ -11,21 +11,37 @@
|
|
|
11
11
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
12
12
|
// See the License for the specific language governing permissions and
|
|
13
13
|
// limitations under the License.
|
|
14
|
-
'use strict';
|
|
15
14
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
const writer = require('../includes/writer.js')(db, options.bufferSize, options.parallelism, ee);
|
|
15
|
+
/* global describe it */
|
|
16
|
+
'use strict';
|
|
19
17
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
.on('error', function(err) {
|
|
24
|
-
// Forward the error to the writer event emitter where we already have
|
|
25
|
-
// listeners on for handling errors
|
|
26
|
-
writer.emit('error', err);
|
|
27
|
-
})
|
|
28
|
-
.pipe(writer); // transform the data
|
|
18
|
+
const assert = require('assert');
|
|
19
|
+
const fs = require('fs');
|
|
20
|
+
const u = require('./citestutils.js');
|
|
29
21
|
|
|
30
|
-
|
|
31
|
-
|
|
22
|
+
describe('Write error tests', function() {
|
|
23
|
+
it('calls callback with error set when stream is not writeable', function(done) {
|
|
24
|
+
u.setTimeout(this, 10);
|
|
25
|
+
const dirname = fs.mkdtempSync('test_backup_');
|
|
26
|
+
// make temp dir read only
|
|
27
|
+
fs.chmodSync(dirname, 0o444);
|
|
28
|
+
const filename = dirname + '/test.backup';
|
|
29
|
+
const backupStream = fs.createWriteStream(filename, { flags: 'w' });
|
|
30
|
+
const params = { useApi: true };
|
|
31
|
+
// try to do backup and check err was set in callback
|
|
32
|
+
u.testBackup(params, 'animaldb', backupStream, function(resultErr) {
|
|
33
|
+
let err = null;
|
|
34
|
+
try {
|
|
35
|
+
// cleanup temp dir
|
|
36
|
+
fs.rmdirSync(dirname);
|
|
37
|
+
// error should have been set
|
|
38
|
+
assert.ok(resultErr);
|
|
39
|
+
assert.strictEqual(resultErr.code, 'EACCES');
|
|
40
|
+
} catch (thrownErr) {
|
|
41
|
+
err = thrownErr;
|
|
42
|
+
} finally {
|
|
43
|
+
done(err);
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
});
|