@cloudant/couchbackup 2.9.16 → 2.9.17-SNAPSHOT.185

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (392) hide show
  1. package/.scannerwork/report-task.txt +2 -2
  2. package/.scannerwork/scanner-report/analysis-cache2.pb +0 -0
  3. package/.scannerwork/scanner-report/analysis-warnings.pb +2 -2
  4. package/.scannerwork/scanner-report/changesets-23.pb +1 -0
  5. package/.scannerwork/scanner-report/changesets-24.pb +1 -0
  6. package/.scannerwork/scanner-report/changesets-26.pb +1 -0
  7. package/.scannerwork/scanner-report/changesets-27.pb +1 -0
  8. package/.scannerwork/scanner-report/changesets-28.pb +1 -0
  9. package/.scannerwork/scanner-report/changesets-29.pb +1 -0
  10. package/.scannerwork/scanner-report/changesets-53.pb +1 -0
  11. package/.scannerwork/scanner-report/changesets-55.pb +1 -0
  12. package/.scannerwork/scanner-report/changesets-56.pb +1 -0
  13. package/.scannerwork/scanner-report/changesets-57.pb +1 -0
  14. package/.scannerwork/scanner-report/changesets-58.pb +1 -0
  15. package/.scannerwork/scanner-report/changesets-59.pb +1 -0
  16. package/.scannerwork/scanner-report/changesets-62.pb +1 -0
  17. package/.scannerwork/scanner-report/changesets-63.pb +1 -0
  18. package/.scannerwork/scanner-report/changesets-67.pb +1 -0
  19. package/.scannerwork/scanner-report/changesets-69.pb +1 -0
  20. package/.scannerwork/scanner-report/component-1.pb +1 -2
  21. package/.scannerwork/scanner-report/component-11.pb +1 -1
  22. package/.scannerwork/scanner-report/component-12.pb +1 -1
  23. package/.scannerwork/scanner-report/component-13.pb +1 -1
  24. package/.scannerwork/scanner-report/component-14.pb +1 -1
  25. package/.scannerwork/scanner-report/component-15.pb +1 -1
  26. package/.scannerwork/scanner-report/component-16.pb +1 -1
  27. package/.scannerwork/scanner-report/component-17.pb +1 -1
  28. package/.scannerwork/scanner-report/component-18.pb +1 -1
  29. package/.scannerwork/scanner-report/component-19.pb +1 -1
  30. package/.scannerwork/scanner-report/component-20.pb +1 -1
  31. package/.scannerwork/scanner-report/component-21.pb +1 -1
  32. package/.scannerwork/scanner-report/component-22.pb +1 -1
  33. package/.scannerwork/scanner-report/component-23.pb +1 -0
  34. package/.scannerwork/scanner-report/component-24.pb +1 -0
  35. package/.scannerwork/scanner-report/component-25.pb +1 -0
  36. package/.scannerwork/scanner-report/component-26.pb +1 -0
  37. package/.scannerwork/scanner-report/component-27.pb +1 -0
  38. package/.scannerwork/scanner-report/component-28.pb +1 -0
  39. package/.scannerwork/scanner-report/component-29.pb +1 -0
  40. package/.scannerwork/scanner-report/component-3.pb +1 -1
  41. package/.scannerwork/scanner-report/component-41.pb +1 -1
  42. package/.scannerwork/scanner-report/component-42.pb +1 -1
  43. package/.scannerwork/scanner-report/component-43.pb +1 -1
  44. package/.scannerwork/scanner-report/component-44.pb +1 -1
  45. package/.scannerwork/scanner-report/component-45.pb +1 -1
  46. package/.scannerwork/scanner-report/component-46.pb +1 -1
  47. package/.scannerwork/scanner-report/component-47.pb +1 -1
  48. package/.scannerwork/scanner-report/component-48.pb +1 -1
  49. package/.scannerwork/scanner-report/component-49.pb +1 -1
  50. package/.scannerwork/scanner-report/component-50.pb +1 -1
  51. package/.scannerwork/scanner-report/component-51.pb +1 -1
  52. package/.scannerwork/scanner-report/component-52.pb +1 -1
  53. package/.scannerwork/scanner-report/component-53.pb +1 -0
  54. package/.scannerwork/scanner-report/component-54.pb +1 -1
  55. package/.scannerwork/scanner-report/component-55.pb +1 -1
  56. package/.scannerwork/scanner-report/component-56.pb +1 -0
  57. package/.scannerwork/scanner-report/component-57.pb +1 -0
  58. package/.scannerwork/scanner-report/component-58.pb +1 -0
  59. package/.scannerwork/scanner-report/component-59.pb +1 -0
  60. package/.scannerwork/scanner-report/component-60.pb +1 -1
  61. package/.scannerwork/scanner-report/component-62.pb +1 -0
  62. package/.scannerwork/scanner-report/component-63.pb +1 -0
  63. package/.scannerwork/scanner-report/component-67.pb +1 -0
  64. package/.scannerwork/scanner-report/component-69.pb +1 -0
  65. package/.scannerwork/scanner-report/component-70.pb +1 -0
  66. package/.scannerwork/scanner-report/component-9.pb +1 -1
  67. package/.scannerwork/scanner-report/coverages-11.pb +0 -0
  68. package/.scannerwork/scanner-report/coverages-12.pb +0 -0
  69. package/.scannerwork/scanner-report/coverages-13.pb +0 -0
  70. package/.scannerwork/scanner-report/coverages-14.pb +0 -0
  71. package/.scannerwork/scanner-report/coverages-15.pb +0 -0
  72. package/.scannerwork/scanner-report/coverages-16.pb +0 -0
  73. package/.scannerwork/scanner-report/coverages-17.pb +0 -0
  74. package/.scannerwork/scanner-report/coverages-18.pb +0 -0
  75. package/.scannerwork/scanner-report/coverages-19.pb +0 -0
  76. package/.scannerwork/scanner-report/coverages-20.pb +0 -0
  77. package/.scannerwork/scanner-report/coverages-21.pb +0 -0
  78. package/.scannerwork/scanner-report/coverages-22.pb +0 -0
  79. package/.scannerwork/scanner-report/coverages-24.pb +0 -0
  80. package/.scannerwork/scanner-report/coverages-27.pb +0 -0
  81. package/.scannerwork/scanner-report/coverages-28.pb +0 -0
  82. package/.scannerwork/scanner-report/coverages-41.pb +0 -0
  83. package/.scannerwork/scanner-report/coverages-42.pb +0 -0
  84. package/.scannerwork/scanner-report/coverages-43.pb +0 -0
  85. package/.scannerwork/scanner-report/coverages-44.pb +0 -0
  86. package/.scannerwork/scanner-report/coverages-45.pb +0 -0
  87. package/.scannerwork/scanner-report/coverages-46.pb +0 -0
  88. package/.scannerwork/scanner-report/coverages-47.pb +0 -0
  89. package/.scannerwork/scanner-report/coverages-48.pb +0 -0
  90. package/.scannerwork/scanner-report/coverages-49.pb +0 -0
  91. package/.scannerwork/scanner-report/coverages-50.pb +0 -0
  92. package/.scannerwork/scanner-report/coverages-51.pb +0 -0
  93. package/.scannerwork/scanner-report/coverages-52.pb +0 -0
  94. package/.scannerwork/scanner-report/coverages-54.pb +0 -0
  95. package/.scannerwork/scanner-report/coverages-56.pb +0 -0
  96. package/.scannerwork/scanner-report/coverages-58.pb +0 -0
  97. package/.scannerwork/scanner-report/coverages-59.pb +0 -0
  98. package/.scannerwork/scanner-report/coverages-60.pb +0 -0
  99. package/.scannerwork/scanner-report/coverages-62.pb +0 -0
  100. package/.scannerwork/scanner-report/coverages-69.pb +0 -0
  101. package/.scannerwork/scanner-report/duplications-12.pb +0 -3
  102. package/.scannerwork/scanner-report/duplications-15.pb +2 -0
  103. package/.scannerwork/scanner-report/duplications-24.pb +2 -0
  104. package/.scannerwork/scanner-report/duplications-43.pb +2 -0
  105. package/.scannerwork/scanner-report/duplications-50.pb +0 -2
  106. package/.scannerwork/scanner-report/duplications-51.pb +3 -2
  107. package/.scannerwork/scanner-report/duplications-66.pb +1 -1
  108. package/.scannerwork/scanner-report/measures-11.pb +0 -0
  109. package/.scannerwork/scanner-report/measures-12.pb +0 -0
  110. package/.scannerwork/scanner-report/measures-13.pb +0 -0
  111. package/.scannerwork/scanner-report/measures-14.pb +0 -0
  112. package/.scannerwork/scanner-report/measures-15.pb +0 -0
  113. package/.scannerwork/scanner-report/measures-16.pb +0 -0
  114. package/.scannerwork/scanner-report/measures-17.pb +0 -0
  115. package/.scannerwork/scanner-report/measures-18.pb +0 -0
  116. package/.scannerwork/scanner-report/measures-19.pb +0 -0
  117. package/.scannerwork/scanner-report/measures-20.pb +0 -0
  118. package/.scannerwork/scanner-report/measures-21.pb +0 -0
  119. package/.scannerwork/scanner-report/measures-22.pb +0 -0
  120. package/.scannerwork/scanner-report/measures-24.pb +0 -0
  121. package/.scannerwork/scanner-report/measures-27.pb +0 -0
  122. package/.scannerwork/scanner-report/measures-28.pb +0 -0
  123. package/.scannerwork/scanner-report/measures-41.pb +0 -0
  124. package/.scannerwork/scanner-report/measures-42.pb +0 -0
  125. package/.scannerwork/scanner-report/measures-43.pb +0 -0
  126. package/.scannerwork/scanner-report/measures-44.pb +0 -0
  127. package/.scannerwork/scanner-report/measures-45.pb +0 -0
  128. package/.scannerwork/scanner-report/measures-46.pb +0 -0
  129. package/.scannerwork/scanner-report/measures-47.pb +0 -0
  130. package/.scannerwork/scanner-report/measures-48.pb +0 -0
  131. package/.scannerwork/scanner-report/measures-49.pb +0 -0
  132. package/.scannerwork/scanner-report/measures-50.pb +0 -0
  133. package/.scannerwork/scanner-report/measures-51.pb +0 -0
  134. package/.scannerwork/scanner-report/measures-52.pb +0 -0
  135. package/.scannerwork/scanner-report/measures-54.pb +0 -0
  136. package/.scannerwork/scanner-report/measures-55.pb +0 -0
  137. package/.scannerwork/scanner-report/measures-56.pb +0 -0
  138. package/.scannerwork/scanner-report/measures-58.pb +0 -0
  139. package/.scannerwork/scanner-report/measures-59.pb +0 -0
  140. package/.scannerwork/scanner-report/measures-60.pb +0 -0
  141. package/.scannerwork/scanner-report/measures-62.pb +0 -0
  142. package/.scannerwork/scanner-report/measures-69.pb +0 -0
  143. package/.scannerwork/scanner-report/measures-9.pb +0 -0
  144. package/.scannerwork/scanner-report/metadata.pb +0 -0
  145. package/.scannerwork/scanner-report/source-11.txt +25 -16
  146. package/.scannerwork/scanner-report/source-12.txt +32 -199
  147. package/.scannerwork/scanner-report/source-13.txt +17 -87
  148. package/.scannerwork/scanner-report/source-14.txt +115 -116
  149. package/.scannerwork/scanner-report/source-15.txt +66 -423
  150. package/.scannerwork/scanner-report/source-16.txt +64 -277
  151. package/.scannerwork/scanner-report/source-17.txt +247 -66
  152. package/.scannerwork/scanner-report/source-18.txt +104 -92
  153. package/.scannerwork/scanner-report/source-19.txt +45 -120
  154. package/.scannerwork/scanner-report/source-20.txt +89 -41
  155. package/.scannerwork/scanner-report/source-21.txt +148 -24
  156. package/.scannerwork/scanner-report/source-22.txt +162 -25
  157. package/.scannerwork/scanner-report/source-24.txt +75 -0
  158. package/.scannerwork/scanner-report/{source-38.txt → source-25.txt} +143 -143
  159. package/.scannerwork/scanner-report/source-27.txt +65 -0
  160. package/.scannerwork/scanner-report/source-28.txt +100 -0
  161. package/.scannerwork/scanner-report/source-3.txt +152 -152
  162. package/.scannerwork/scanner-report/source-41.txt +315 -32
  163. package/.scannerwork/scanner-report/source-42.txt +23 -63
  164. package/.scannerwork/scanner-report/source-43.txt +169 -45
  165. package/.scannerwork/scanner-report/source-44.txt +23 -164
  166. package/.scannerwork/scanner-report/source-45.txt +116 -104
  167. package/.scannerwork/scanner-report/source-46.txt +14 -26
  168. package/.scannerwork/scanner-report/source-47.txt +48 -99
  169. package/.scannerwork/scanner-report/source-48.txt +52 -141
  170. package/.scannerwork/scanner-report/source-49.txt +254 -242
  171. package/.scannerwork/scanner-report/source-50.txt +114 -72
  172. package/.scannerwork/scanner-report/source-51.txt +198 -60
  173. package/.scannerwork/scanner-report/source-52.txt +134 -14
  174. package/.scannerwork/scanner-report/source-54.txt +80 -25
  175. package/.scannerwork/scanner-report/source-55.txt +187 -424
  176. package/.scannerwork/scanner-report/{source-5.txt → source-56.txt} +10 -7
  177. package/.scannerwork/scanner-report/source-58.txt +106 -0
  178. package/.scannerwork/scanner-report/source-59.txt +449 -0
  179. package/.scannerwork/scanner-report/source-60.txt +25 -44
  180. package/.scannerwork/scanner-report/source-62.txt +60 -0
  181. package/.scannerwork/scanner-report/source-69.txt +46 -0
  182. package/.scannerwork/scanner-report/{source-68.txt → source-70.txt} +49 -49
  183. package/.scannerwork/scanner-report/source-9.txt +424 -183
  184. package/.scannerwork/scanner-report/symbols-11.pb +18 -9
  185. package/.scannerwork/scanner-report/symbols-12.pb +20 -264
  186. package/.scannerwork/scanner-report/symbols-13.pb +13 -57
  187. package/.scannerwork/scanner-report/symbols-14.pb +33 -86
  188. package/.scannerwork/scanner-report/symbols-15.pb +43 -789
  189. package/.scannerwork/scanner-report/symbols-16.pb +44 -426
  190. package/.scannerwork/scanner-report/symbols-17.pb +354 -69
  191. package/.scannerwork/scanner-report/symbols-18.pb +30 -59
  192. package/.scannerwork/scanner-report/symbols-19.pb +19 -71
  193. package/.scannerwork/scanner-report/symbols-20.pb +45 -32
  194. package/.scannerwork/scanner-report/symbols-21.pb +126 -23
  195. package/.scannerwork/scanner-report/symbols-22.pb +143 -30
  196. package/.scannerwork/scanner-report/symbols-24.pb +42 -0
  197. package/.scannerwork/scanner-report/symbols-27.pb +33 -0
  198. package/.scannerwork/scanner-report/symbols-28.pb +69 -0
  199. package/.scannerwork/scanner-report/symbols-41.pb +353 -20
  200. package/.scannerwork/scanner-report/symbols-42.pb +23 -46
  201. package/.scannerwork/scanner-report/symbols-43.pb +203 -19
  202. package/.scannerwork/scanner-report/symbols-44.pb +9 -144
  203. package/.scannerwork/scanner-report/symbols-45.pb +86 -30
  204. package/.scannerwork/scanner-report/symbols-46.pb +8 -18
  205. package/.scannerwork/scanner-report/symbols-47.pb +23 -45
  206. package/.scannerwork/scanner-report/symbols-48.pb +39 -126
  207. package/.scannerwork/scanner-report/symbols-49.pb +402 -328
  208. package/.scannerwork/scanner-report/symbols-50.pb +71 -44
  209. package/.scannerwork/scanner-report/symbols-51.pb +264 -42
  210. package/.scannerwork/scanner-report/symbols-52.pb +92 -13
  211. package/.scannerwork/scanner-report/symbols-54.pb +58 -7
  212. package/.scannerwork/scanner-report/symbols-56.pb +9 -0
  213. package/.scannerwork/scanner-report/symbols-58.pb +59 -0
  214. package/.scannerwork/scanner-report/symbols-59.pb +790 -0
  215. package/.scannerwork/scanner-report/symbols-60.pb +31 -21
  216. package/.scannerwork/scanner-report/symbols-62.pb +21 -0
  217. package/.scannerwork/scanner-report/symbols-69.pb +7 -0
  218. package/.scannerwork/scanner-report/syntax-highlightings-11.pb +23 -25
  219. package/.scannerwork/scanner-report/syntax-highlightings-12.pb +33 -266
  220. package/.scannerwork/scanner-report/syntax-highlightings-13.pb +15 -124
  221. package/.scannerwork/scanner-report/syntax-highlightings-14.pb +94 -90
  222. package/.scannerwork/scanner-report/syntax-highlightings-15.pb +57 -591
  223. package/.scannerwork/scanner-report/syntax-highlightings-16.pb +62 -687
  224. package/.scannerwork/scanner-report/syntax-highlightings-17.pb +245 -67
  225. package/.scannerwork/scanner-report/syntax-highlightings-18.pb +83 -148
  226. package/.scannerwork/scanner-report/syntax-highlightings-19.pb +23 -145
  227. package/.scannerwork/scanner-report/syntax-highlightings-20.pb +93 -77
  228. package/.scannerwork/scanner-report/syntax-highlightings-21.pb +177 -20
  229. package/.scannerwork/scanner-report/syntax-highlightings-22.pb +207 -33
  230. package/.scannerwork/scanner-report/syntax-highlightings-24.pb +81 -0
  231. package/.scannerwork/scanner-report/{syntax-highlightings-38.pb → syntax-highlightings-25.pb} +103 -100
  232. package/.scannerwork/scanner-report/syntax-highlightings-27.pb +110 -0
  233. package/.scannerwork/scanner-report/syntax-highlightings-28.pb +107 -0
  234. package/.scannerwork/scanner-report/syntax-highlightings-3.pb +107 -108
  235. package/.scannerwork/scanner-report/syntax-highlightings-41.pb +590 -34
  236. package/.scannerwork/scanner-report/syntax-highlightings-42.pb +22 -61
  237. package/.scannerwork/scanner-report/syntax-highlightings-43.pb +246 -25
  238. package/.scannerwork/scanner-report/syntax-highlightings-44.pb +27 -209
  239. package/.scannerwork/scanner-report/syntax-highlightings-45.pb +95 -83
  240. package/.scannerwork/scanner-report/syntax-highlightings-46.pb +20 -23
  241. package/.scannerwork/scanner-report/syntax-highlightings-47.pb +67 -96
  242. package/.scannerwork/scanner-report/syntax-highlightings-48.pb +64 -176
  243. package/.scannerwork/scanner-report/syntax-highlightings-49.pb +606 -171
  244. package/.scannerwork/scanner-report/syntax-highlightings-50.pb +145 -57
  245. package/.scannerwork/scanner-report/syntax-highlightings-51.pb +263 -47
  246. package/.scannerwork/scanner-report/syntax-highlightings-52.pb +208 -16
  247. package/.scannerwork/scanner-report/syntax-highlightings-54.pb +119 -27
  248. package/.scannerwork/scanner-report/syntax-highlightings-55.pb +289 -3261
  249. package/.scannerwork/scanner-report/syntax-highlightings-56.pb +54 -0
  250. package/.scannerwork/scanner-report/syntax-highlightings-58.pb +178 -0
  251. package/.scannerwork/scanner-report/syntax-highlightings-59.pb +627 -0
  252. package/.scannerwork/scanner-report/syntax-highlightings-60.pb +48 -61
  253. package/.scannerwork/scanner-report/syntax-highlightings-62.pb +82 -0
  254. package/.scannerwork/scanner-report/syntax-highlightings-69.pb +62 -0
  255. package/.scannerwork/scanner-report/{syntax-highlightings-68.pb → syntax-highlightings-70.pb} +14 -13
  256. package/.scannerwork/scanner-report/syntax-highlightings-9.pb +3286 -226
  257. package/package.json +1 -1
  258. package/test-18-results.xml +147 -147
  259. package/test-20-results.xml +141 -141
  260. package/test-21-results.xml +143 -143
  261. package/test-iam-20-results.xml +49 -49
  262. package/.scannerwork/scanner-report/changesets-10.pb +0 -2
  263. package/.scannerwork/scanner-report/changesets-2.pb +0 -1
  264. package/.scannerwork/scanner-report/changesets-34.pb +0 -1
  265. package/.scannerwork/scanner-report/changesets-35.pb +0 -1
  266. package/.scannerwork/scanner-report/changesets-36.pb +0 -1
  267. package/.scannerwork/scanner-report/changesets-37.pb +0 -1
  268. package/.scannerwork/scanner-report/changesets-39.pb +0 -1
  269. package/.scannerwork/scanner-report/changesets-4.pb +0 -1
  270. package/.scannerwork/scanner-report/changesets-40.pb +0 -1
  271. package/.scannerwork/scanner-report/changesets-5.pb +0 -1
  272. package/.scannerwork/scanner-report/changesets-6.pb +0 -1
  273. package/.scannerwork/scanner-report/changesets-61.pb +0 -1
  274. package/.scannerwork/scanner-report/changesets-64.pb +0 -1
  275. package/.scannerwork/scanner-report/changesets-7.pb +0 -1
  276. package/.scannerwork/scanner-report/changesets-8.pb +0 -1
  277. package/.scannerwork/scanner-report/changesets-9.pb +0 -1
  278. package/.scannerwork/scanner-report/component-10.pb +0 -2
  279. package/.scannerwork/scanner-report/component-2.pb +0 -1
  280. package/.scannerwork/scanner-report/component-34.pb +0 -1
  281. package/.scannerwork/scanner-report/component-35.pb +0 -1
  282. package/.scannerwork/scanner-report/component-36.pb +0 -1
  283. package/.scannerwork/scanner-report/component-37.pb +0 -1
  284. package/.scannerwork/scanner-report/component-38.pb +0 -1
  285. package/.scannerwork/scanner-report/component-39.pb +0 -1
  286. package/.scannerwork/scanner-report/component-4.pb +0 -1
  287. package/.scannerwork/scanner-report/component-40.pb +0 -1
  288. package/.scannerwork/scanner-report/component-5.pb +0 -1
  289. package/.scannerwork/scanner-report/component-6.pb +0 -1
  290. package/.scannerwork/scanner-report/component-61.pb +0 -1
  291. package/.scannerwork/scanner-report/component-64.pb +0 -1
  292. package/.scannerwork/scanner-report/component-68.pb +0 -1
  293. package/.scannerwork/scanner-report/component-7.pb +0 -1
  294. package/.scannerwork/scanner-report/component-8.pb +0 -1
  295. package/.scannerwork/scanner-report/coverages-10.pb +0 -0
  296. package/.scannerwork/scanner-report/coverages-36.pb +0 -0
  297. package/.scannerwork/scanner-report/coverages-37.pb +0 -0
  298. package/.scannerwork/scanner-report/coverages-39.pb +0 -0
  299. package/.scannerwork/scanner-report/coverages-5.pb +0 -0
  300. package/.scannerwork/scanner-report/coverages-6.pb +0 -0
  301. package/.scannerwork/scanner-report/coverages-8.pb +0 -0
  302. package/.scannerwork/scanner-report/coverages-9.pb +0 -0
  303. package/.scannerwork/scanner-report/duplications-9.pb +0 -2
  304. package/.scannerwork/scanner-report/measures-10.pb +0 -0
  305. package/.scannerwork/scanner-report/measures-36.pb +0 -15
  306. package/.scannerwork/scanner-report/measures-37.pb +0 -0
  307. package/.scannerwork/scanner-report/measures-39.pb +0 -0
  308. package/.scannerwork/scanner-report/measures-4.pb +0 -0
  309. package/.scannerwork/scanner-report/measures-5.pb +0 -0
  310. package/.scannerwork/scanner-report/measures-6.pb +0 -0
  311. package/.scannerwork/scanner-report/measures-8.pb +0 -0
  312. package/.scannerwork/scanner-report/source-10.txt +0 -37
  313. package/.scannerwork/scanner-report/source-36.txt +0 -151
  314. package/.scannerwork/scanner-report/source-37.txt +0 -75
  315. package/.scannerwork/scanner-report/source-39.txt +0 -129
  316. package/.scannerwork/scanner-report/source-4.txt +0 -187
  317. package/.scannerwork/scanner-report/source-6.txt +0 -329
  318. package/.scannerwork/scanner-report/source-8.txt +0 -62
  319. package/.scannerwork/scanner-report/symbols-10.pb +0 -9
  320. package/.scannerwork/scanner-report/symbols-36.pb +0 -93
  321. package/.scannerwork/scanner-report/symbols-37.pb +0 -39
  322. package/.scannerwork/scanner-report/symbols-39.pb +0 -33
  323. package/.scannerwork/scanner-report/symbols-5.pb +0 -8
  324. package/.scannerwork/scanner-report/symbols-6.pb +0 -353
  325. package/.scannerwork/scanner-report/symbols-8.pb +0 -24
  326. package/.scannerwork/scanner-report/symbols-9.pb +0 -203
  327. package/.scannerwork/scanner-report/syntax-highlightings-10.pb +0 -61
  328. package/.scannerwork/scanner-report/syntax-highlightings-36.pb +0 -237
  329. package/.scannerwork/scanner-report/syntax-highlightings-37.pb +0 -101
  330. package/.scannerwork/scanner-report/syntax-highlightings-39.pb +0 -129
  331. package/.scannerwork/scanner-report/syntax-highlightings-4.pb +0 -368
  332. package/.scannerwork/scanner-report/syntax-highlightings-5.pb +0 -49
  333. package/.scannerwork/scanner-report/syntax-highlightings-6.pb +0 -620
  334. package/.scannerwork/scanner-report/syntax-highlightings-8.pb +0 -97
  335. /package/.scannerwork/scanner-report/{coverages-40.pb → coverages-23.pb} +0 -0
  336. /package/.scannerwork/scanner-report/{coverages-2.pb → coverages-26.pb} +0 -0
  337. /package/.scannerwork/scanner-report/{coverages-34.pb → coverages-29.pb} +0 -0
  338. /package/.scannerwork/scanner-report/{coverages-7.pb → coverages-53.pb} +0 -0
  339. /package/.scannerwork/scanner-report/{coverages-4.pb → coverages-55.pb} +0 -0
  340. /package/.scannerwork/scanner-report/{coverages-35.pb → coverages-57.pb} +0 -0
  341. /package/.scannerwork/scanner-report/{coverages-61.pb → coverages-63.pb} +0 -0
  342. /package/.scannerwork/scanner-report/{coverages-64.pb → coverages-67.pb} +0 -0
  343. /package/.scannerwork/scanner-report/{duplications-10.pb → duplications-23.pb} +0 -0
  344. /package/.scannerwork/scanner-report/{duplications-2.pb → duplications-26.pb} +0 -0
  345. /package/.scannerwork/scanner-report/{duplications-34.pb → duplications-27.pb} +0 -0
  346. /package/.scannerwork/scanner-report/{duplications-35.pb → duplications-28.pb} +0 -0
  347. /package/.scannerwork/scanner-report/{duplications-36.pb → duplications-29.pb} +0 -0
  348. /package/.scannerwork/scanner-report/{duplications-37.pb → duplications-53.pb} +0 -0
  349. /package/.scannerwork/scanner-report/{duplications-4.pb → duplications-55.pb} +0 -0
  350. /package/.scannerwork/scanner-report/{duplications-39.pb → duplications-56.pb} +0 -0
  351. /package/.scannerwork/scanner-report/{duplications-40.pb → duplications-57.pb} +0 -0
  352. /package/.scannerwork/scanner-report/{duplications-46.pb → duplications-58.pb} +0 -0
  353. /package/.scannerwork/scanner-report/{duplications-6.pb → duplications-59.pb} +0 -0
  354. /package/.scannerwork/scanner-report/{duplications-61.pb → duplications-62.pb} +0 -0
  355. /package/.scannerwork/scanner-report/{duplications-7.pb → duplications-63.pb} +0 -0
  356. /package/.scannerwork/scanner-report/{duplications-64.pb → duplications-67.pb} +0 -0
  357. /package/.scannerwork/scanner-report/{duplications-8.pb → duplications-69.pb} +0 -0
  358. /package/.scannerwork/scanner-report/{issues-6.pb → issues-41.pb} +0 -0
  359. /package/.scannerwork/scanner-report/{issues-14.pb → issues-45.pb} +0 -0
  360. /package/.scannerwork/scanner-report/{issues-12.pb → issues-51.pb} +0 -0
  361. /package/.scannerwork/scanner-report/{issues-35.pb → issues-57.pb} +0 -0
  362. /package/.scannerwork/scanner-report/{measures-40.pb → measures-23.pb} +0 -0
  363. /package/.scannerwork/scanner-report/{measures-38.pb → measures-25.pb} +0 -0
  364. /package/.scannerwork/scanner-report/{measures-2.pb → measures-26.pb} +0 -0
  365. /package/.scannerwork/scanner-report/{measures-34.pb → measures-29.pb} +0 -0
  366. /package/.scannerwork/scanner-report/{measures-7.pb → measures-53.pb} +0 -0
  367. /package/.scannerwork/scanner-report/{measures-35.pb → measures-57.pb} +0 -0
  368. /package/.scannerwork/scanner-report/{measures-61.pb → measures-63.pb} +0 -0
  369. /package/.scannerwork/scanner-report/{measures-64.pb → measures-67.pb} +0 -0
  370. /package/.scannerwork/scanner-report/{measures-68.pb → measures-70.pb} +0 -0
  371. /package/.scannerwork/scanner-report/{source-40.txt → source-23.txt} +0 -0
  372. /package/.scannerwork/scanner-report/{source-2.txt → source-26.txt} +0 -0
  373. /package/.scannerwork/scanner-report/{source-34.txt → source-29.txt} +0 -0
  374. /package/.scannerwork/scanner-report/{source-7.txt → source-53.txt} +0 -0
  375. /package/.scannerwork/scanner-report/{source-35.txt → source-57.txt} +0 -0
  376. /package/.scannerwork/scanner-report/{source-61.txt → source-63.txt} +0 -0
  377. /package/.scannerwork/scanner-report/{source-64.txt → source-67.txt} +0 -0
  378. /package/.scannerwork/scanner-report/{symbols-40.pb → symbols-23.pb} +0 -0
  379. /package/.scannerwork/scanner-report/{symbols-2.pb → symbols-26.pb} +0 -0
  380. /package/.scannerwork/scanner-report/{symbols-34.pb → symbols-29.pb} +0 -0
  381. /package/.scannerwork/scanner-report/{symbols-7.pb → symbols-53.pb} +0 -0
  382. /package/.scannerwork/scanner-report/{symbols-4.pb → symbols-55.pb} +0 -0
  383. /package/.scannerwork/scanner-report/{symbols-35.pb → symbols-57.pb} +0 -0
  384. /package/.scannerwork/scanner-report/{symbols-61.pb → symbols-63.pb} +0 -0
  385. /package/.scannerwork/scanner-report/{symbols-64.pb → symbols-67.pb} +0 -0
  386. /package/.scannerwork/scanner-report/{syntax-highlightings-40.pb → syntax-highlightings-23.pb} +0 -0
  387. /package/.scannerwork/scanner-report/{syntax-highlightings-2.pb → syntax-highlightings-26.pb} +0 -0
  388. /package/.scannerwork/scanner-report/{syntax-highlightings-34.pb → syntax-highlightings-29.pb} +0 -0
  389. /package/.scannerwork/scanner-report/{syntax-highlightings-7.pb → syntax-highlightings-53.pb} +0 -0
  390. /package/.scannerwork/scanner-report/{syntax-highlightings-35.pb → syntax-highlightings-57.pb} +0 -0
  391. /package/.scannerwork/scanner-report/{syntax-highlightings-61.pb → syntax-highlightings-63.pb} +0 -0
  392. /package/.scannerwork/scanner-report/{syntax-highlightings-64.pb → syntax-highlightings-67.pb} +0 -0
@@ -1,424 +1,187 @@
1
- <testsuites name="test">
2
- <testsuite name="#unit Validate arguments" tests="33" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:36:17" time="0.093">
3
- <testcase classname="test.#unit Validate arguments" name="returns error for invalid URL type" time="0.001">
4
- </testcase>
5
- <testcase classname="test.#unit Validate arguments" name="returns no error for valid URL type" time="0.022">
6
- </testcase>
7
- <testcase classname="test.#unit Validate arguments" name="returns error for invalid (no host) URL" time="0">
8
- </testcase>
9
- <testcase classname="test.#unit Validate arguments" name="returns error for invalid (no protocol) URL" time="0">
10
- </testcase>
11
- <testcase classname="test.#unit Validate arguments" name="returns error for invalid (wrong protocol) URL" time="0">
12
- </testcase>
13
- <testcase classname="test.#unit Validate arguments" name="returns error for invalid (no path) URL" time="0">
14
- </testcase>
15
- <testcase classname="test.#unit Validate arguments" name="returns error for invalid (no protocol, no host) URL" time="0">
16
- </testcase>
17
- <testcase classname="test.#unit Validate arguments" name="returns error for invalid buffer size type" time="0">
18
- </testcase>
19
- <testcase classname="test.#unit Validate arguments" name="returns error for zero buffer size" time="0.001">
20
- </testcase>
21
- <testcase classname="test.#unit Validate arguments" name="returns error for float buffer size" time="0">
22
- </testcase>
23
- <testcase classname="test.#unit Validate arguments" name="returns no error for valid buffer size type" time="0.005">
24
- </testcase>
25
- <testcase classname="test.#unit Validate arguments" name="returns error for invalid log type" time="0">
26
- </testcase>
27
- <testcase classname="test.#unit Validate arguments" name="returns no error for valid log type" time="0.004">
28
- </testcase>
29
- <testcase classname="test.#unit Validate arguments" name="returns error for invalid mode type" time="0">
30
- </testcase>
31
- <testcase classname="test.#unit Validate arguments" name="returns error for invalid mode string" time="0">
32
- </testcase>
33
- <testcase classname="test.#unit Validate arguments" name="returns no error for valid mode type" time="0.004">
34
- </testcase>
35
- <testcase classname="test.#unit Validate arguments" name="returns error for invalid output type" time="0.001">
36
- </testcase>
37
- <testcase classname="test.#unit Validate arguments" name="returns no error for valid output type" time="0.005">
38
- </testcase>
39
- <testcase classname="test.#unit Validate arguments" name="returns error for invalid parallelism type" time="0">
40
- </testcase>
41
- <testcase classname="test.#unit Validate arguments" name="returns error for zero parallelism" time="0.001">
42
- </testcase>
43
- <testcase classname="test.#unit Validate arguments" name="returns error for float parallelism" time="0">
44
- </testcase>
45
- <testcase classname="test.#unit Validate arguments" name="returns no error for valid parallelism type" time="0.005">
46
- </testcase>
47
- <testcase classname="test.#unit Validate arguments" name="returns error for invalid request timeout type" time="0">
48
- </testcase>
49
- <testcase classname="test.#unit Validate arguments" name="returns error for zero request timeout" time="0">
50
- </testcase>
51
- <testcase classname="test.#unit Validate arguments" name="returns error for float request timout" time="0.001">
52
- </testcase>
53
- <testcase classname="test.#unit Validate arguments" name="returns no error for valid request timeout type" time="0.004">
54
- </testcase>
55
- <testcase classname="test.#unit Validate arguments" name="returns error for invalid resume type" time="0">
56
- </testcase>
57
- <testcase classname="test.#unit Validate arguments" name="returns no error for valid resume type" time="0.004">
58
- </testcase>
59
- <testcase classname="test.#unit Validate arguments" name="returns error for invalid key type" time="0">
60
- </testcase>
61
- <testcase classname="test.#unit Validate arguments" name="returns error for key and URL credentials supplied" time="0">
62
- </testcase>
63
- <testcase classname="test.#unit Validate arguments" name="warns for log arg in shallow mode" time="0.005">
64
- </testcase>
65
- <testcase classname="test.#unit Validate arguments" name="warns for resume arg in shallow mode" time="0.005">
66
- </testcase>
67
- <testcase classname="test.#unit Validate arguments" name="warns for parallelism arg in shallow mode" time="0.008">
68
- </testcase>
69
- </testsuite>
70
- <testsuite name="Basic backup and restore using API" tests="3" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:36:17" time="4.527">
71
- <testcase classname="test.Basic backup and restore using API" name="should backup animaldb to a file correctly" time="0.955">
72
- </testcase>
73
- <testcase classname="test.Basic backup and restore using API" name="should restore animaldb to a database correctly" time="1.832">
74
- </testcase>
75
- <testcase classname="test.Basic backup and restore using API" name="should execute a shallow mode backup successfully" time="0.633">
76
- </testcase>
77
- </testsuite>
78
- <testsuite name="Basic backup and restore using API Buffer size tests using API" tests="3" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:36:21" time="10.637">
79
- <testcase classname="test.Basic backup and restore using API Buffer size tests using API" name="should backup/restore animaldb with the same buffer size" time="2.831">
80
- </testcase>
81
- <testcase classname="test.Basic backup and restore using API Buffer size tests using API" name="should backup/restore animaldb with backup buffer &gt; restore buffer" time="3.468">
82
- </testcase>
83
- <testcase classname="test.Basic backup and restore using API Buffer size tests using API" name="should backup/restore animaldb with backup buffer &lt; restore buffer" time="3.539">
84
- </testcase>
85
- </testsuite>
86
- <testsuite name="Basic backup and restore using CLI" tests="3" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:36:32" time="5.253">
87
- <testcase classname="test.Basic backup and restore using CLI" name="should backup animaldb to a file correctly" time="1.291">
88
- </testcase>
89
- <testcase classname="test.Basic backup and restore using CLI" name="should restore animaldb to a database correctly" time="2.18">
90
- </testcase>
91
- <testcase classname="test.Basic backup and restore using CLI" name="should execute a shallow mode backup successfully" time="1">
92
- </testcase>
93
- </testsuite>
94
- <testsuite name="Basic backup and restore using CLI Buffer size tests using CLI" tests="3" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:36:37" time="12.64">
95
- <testcase classname="test.Basic backup and restore using CLI Buffer size tests using CLI" name="should backup/restore animaldb with the same buffer size" time="3.284">
96
- </testcase>
97
- <testcase classname="test.Basic backup and restore using CLI Buffer size tests using CLI" name="should backup/restore animaldb with backup buffer &gt; restore buffer" time="4.234">
98
- </testcase>
99
- <testcase classname="test.Basic backup and restore using CLI Buffer size tests using CLI" name="should backup/restore animaldb with backup buffer &lt; restore buffer" time="4.316">
100
- </testcase>
101
- </testsuite>
102
- <testsuite name="Compression tests using API" tests="3" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:36:50" time="5.355">
103
- <testcase classname="test.Compression tests using API" name="should backup animaldb to a compressed file" time="0.869">
104
- </testcase>
105
- <testcase classname="test.Compression tests using API" name="should backup and restore animaldb via a compressed file" time="1.515">
106
- </testcase>
107
- <testcase classname="test.Compression tests using API" name="should backup and restore animaldb via a compressed stream" time="2.174">
108
- </testcase>
109
- </testsuite>
110
- <testsuite name="Compression tests using CLI" tests="3" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:36:55" time="6.979">
111
- <testcase classname="test.Compression tests using CLI" name="should backup animaldb to a compressed file" time="1.272">
112
- </testcase>
113
- <testcase classname="test.Compression tests using CLI" name="should backup and restore animaldb via a compressed file" time="2.302">
114
- </testcase>
115
- <testcase classname="test.Compression tests using CLI" name="should backup and restore animaldb via a compressed stream" time="2.611">
116
- </testcase>
117
- </testsuite>
118
- <testsuite name="End to end backup and restore using API" tests="2" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:37:02" time="301.883">
119
- <testcase classname="test.End to end backup and restore using API" name="should backup and restore animaldb" time="2.159">
120
- </testcase>
121
- <testcase classname="test.End to end backup and restore using API" name="should backup and restore largedb1g #slow" time="298.955">
122
- </testcase>
123
- </testsuite>
124
- <testsuite name="End to end backup and restore using CLI" tests="2" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:42:04" time="454.537">
125
- <testcase classname="test.End to end backup and restore using CLI" name="should backup and restore animaldb" time="2.644">
126
- </testcase>
127
- <testcase classname="test.End to end backup and restore using CLI" name="should backup and restore largedb1g #slow" time="451.128">
128
- </testcase>
129
- </testsuite>
130
- <testsuite name="Encryption tests" tests="1" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:49:39" time="2.646">
131
- <testcase classname="test.Encryption tests" name="should backup and restore animaldb via an encrypted file" time="2.373">
132
- </testcase>
133
- </testsuite>
134
- <testsuite name="Write error tests" tests="1" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:49:41" time="0.292">
135
- <testcase classname="test.Write error tests" name="calls callback with error set when stream is not writeable" time="0.012">
136
- </testcase>
137
- </testsuite>
138
- <testsuite name="Event tests" tests="2" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:49:41" time="2.492">
139
- <testcase classname="test.Event tests" name="should get a finished event when using stdout" time="0.956">
140
- </testcase>
141
- <testcase classname="test.Event tests" name="should get a finished event when using file output" time="0.899">
142
- </testcase>
143
- </testsuite>
144
- <testsuite name="Resume tests using API" tests="3" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:49:44" time="5.396">
145
- <testcase classname="test.Resume tests using API" name="should create a log file" time="0.925">
146
- </testcase>
147
- <testcase classname="test.Resume tests using API" name="should restore corrupted animaldb to a database correctly" time="1.884">
148
- </testcase>
149
- <testcase classname="test.Resume tests using API" name="should restore resumed animaldb with blank line to a database correctly" time="1.769">
150
- </testcase>
151
- </testsuite>
152
- <testsuite name="Resume tests using CLI" tests="3" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:49:49" time="6.462">
153
- <testcase classname="test.Resume tests using CLI" name="should create a log file" time="1.268">
154
- </testcase>
155
- <testcase classname="test.Resume tests using CLI" name="should restore corrupted animaldb to a database correctly" time="2.152">
156
- </testcase>
157
- <testcase classname="test.Resume tests using CLI" name="should restore resumed animaldb with blank line to a database correctly" time="2.23">
158
- </testcase>
159
- </testsuite>
160
- <testsuite name="Resume tests" tests="2" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:49:56" time="32.265">
161
- <testcase classname="test.Resume tests" name="should correctly backup and restore backup10m" time="16.008">
162
- </testcase>
163
- <testcase classname="test.Resume tests" name="should correctly backup and restore backup10m using --output" time="15.676">
164
- </testcase>
165
- </testsuite>
166
- <testsuite name="#unit Configuration" tests="12" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:50:28" time="0.01">
167
- <testcase classname="test.#unit Configuration" name="respects the COUCH_URL env variable" time="0">
168
- </testcase>
169
- <testcase classname="test.#unit Configuration" name="respects the COUCH_DATABASE env variable" time="0">
170
- </testcase>
171
- <testcase classname="test.#unit Configuration" name="respects the COUCH_BUFFER_SIZE env variable" time="0">
172
- </testcase>
173
- <testcase classname="test.#unit Configuration" name="respects the COUCH_PARALLELISM env variable" time="0">
174
- </testcase>
175
- <testcase classname="test.#unit Configuration" name="respects the COUCH_REQUEST_TIMEOUT env variable" time="0">
176
- </testcase>
177
- <testcase classname="test.#unit Configuration" name="respects the CLOUDANT_IAM_API_KEY env variable" time="0">
178
- </testcase>
179
- <testcase classname="test.#unit Configuration" name="respects the CLOUDANT_IAM_TOKEN_URL env variable" time="0">
180
- </testcase>
181
- <testcase classname="test.#unit Configuration" name="respects the COUCH_LOG env variable" time="0">
182
- </testcase>
183
- <testcase classname="test.#unit Configuration" name="respects the COUCH_RESUME env variable" time="0.001">
184
- </testcase>
185
- <testcase classname="test.#unit Configuration" name="respects the COUCH_OUTPUT env variable" time="0">
186
- </testcase>
187
- <testcase classname="test.#unit Configuration" name="respects the COUCH_MODE env variable" time="0">
188
- </testcase>
189
- <testcase classname="test.#unit Configuration" name="respects the COUCH_QUIET env variable" time="0.001">
190
- </testcase>
191
- </testsuite>
192
- <testsuite name="#unit Fatal errors using API for backup" tests="10" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:50:28" time="0.092">
193
- <testcase classname="test.#unit Fatal errors using API for backup" name="should terminate when DB does not exist" time="0.01">
194
- </testcase>
195
- <testcase classname="test.#unit Fatal errors using API for backup" name="should terminate on BulkGetError" time="0.009">
196
- </testcase>
197
- <testcase classname="test.#unit Fatal errors using API for backup" name="should terminate on Unauthorized existence check" time="0.008">
198
- </testcase>
199
- <testcase classname="test.#unit Fatal errors using API for backup" name="should terminate on Forbidden no _reader" time="0.004">
200
- </testcase>
201
- <testcase classname="test.#unit Fatal errors using API for backup" name="should terminate on _bulk_get HTTPFatalError" time="0.015">
202
- </testcase>
203
- <testcase classname="test.#unit Fatal errors using API for backup" name="should terminate on NoLogFileName" time="0.001">
204
- </testcase>
205
- <testcase classname="test.#unit Fatal errors using API for backup" name="should terminate on LogDoesNotExist" time="0.001">
206
- </testcase>
207
- <testcase classname="test.#unit Fatal errors using API for backup" name="should terminate on IncompleteChangesInLogFile" time="0.01">
208
- </testcase>
209
- <testcase classname="test.#unit Fatal errors using API for backup" name="should terminate on _changes HTTPFatalError" time="0.015">
210
- </testcase>
211
- <testcase classname="test.#unit Fatal errors using API for backup" name="should terminate on SpoolChangesError" time="0.014">
212
- </testcase>
213
- </testsuite>
214
- <testsuite name="#unit Fatal errors using API for restore" tests="9" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:50:28" time="0.121">
215
- <testcase classname="test.#unit Fatal errors using API for restore" name="should terminate on Unauthorized db existence check" time="0.006">
216
- </testcase>
217
- <testcase classname="test.#unit Fatal errors using API for restore" name="should terminate on Forbidden no _writer" time="0.011">
218
- </testcase>
219
- <testcase classname="test.#unit Fatal errors using API for restore" name="should terminate on RestoreDatabaseNotFound" time="0.004">
220
- </testcase>
221
- <testcase classname="test.#unit Fatal errors using API for restore" name="should terminate on notEmptyDBErr when database is not empty" time="0.005">
222
- </testcase>
223
- <testcase classname="test.#unit Fatal errors using API for restore" name="should terminate on notEmptyDBErr when database is not new" time="0.005">
224
- </testcase>
225
- <testcase classname="test.#unit Fatal errors using API for restore" name="should terminate on _bulk_docs HTTPFatalError" time="0.01">
226
- </testcase>
227
- <testcase classname="test.#unit Fatal errors using API for restore" name="should terminate on _bulk_docs HTTPFatalError from system database" time="0.035">
228
- </testcase>
229
- <testcase classname="test.#unit Fatal errors using API for restore" name="should terminate on _bulk_docs HTTPFatalError large stream" time="0.025">
230
- </testcase>
231
- <testcase classname="test.#unit Fatal errors using API for restore" name="should terminate on multiple _bulk_docs HTTPFatalError" time="0.01">
232
- </testcase>
233
- </testsuite>
234
- <testsuite name="#unit Fatal errors using CLI for backup" tests="10" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:50:28" time="3.024">
235
- <testcase classname="test.#unit Fatal errors using CLI for backup" name="should terminate when DB does not exist" time="0.297">
236
- </testcase>
237
- <testcase classname="test.#unit Fatal errors using CLI for backup" name="should terminate on BulkGetError" time="0.332">
238
- </testcase>
239
- <testcase classname="test.#unit Fatal errors using CLI for backup" name="should terminate on Unauthorized existence check" time="0.305">
240
- </testcase>
241
- <testcase classname="test.#unit Fatal errors using CLI for backup" name="should terminate on Forbidden no _reader" time="0.294">
242
- </testcase>
243
- <testcase classname="test.#unit Fatal errors using CLI for backup" name="should terminate on _bulk_get HTTPFatalError" time="0.322">
244
- </testcase>
245
- <testcase classname="test.#unit Fatal errors using CLI for backup" name="should terminate on NoLogFileName" time="0.239">
246
- </testcase>
247
- <testcase classname="test.#unit Fatal errors using CLI for backup" name="should terminate on LogDoesNotExist" time="0.257">
248
- </testcase>
249
- <testcase classname="test.#unit Fatal errors using CLI for backup" name="should terminate on IncompleteChangesInLogFile" time="0.308">
250
- </testcase>
251
- <testcase classname="test.#unit Fatal errors using CLI for backup" name="should terminate on _changes HTTPFatalError" time="0.341">
252
- </testcase>
253
- <testcase classname="test.#unit Fatal errors using CLI for backup" name="should terminate on SpoolChangesError" time="0.321">
254
- </testcase>
255
- </testsuite>
256
- <testsuite name="#unit Fatal errors using CLI for restore" tests="9" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:50:31" time="2.822">
257
- <testcase classname="test.#unit Fatal errors using CLI for restore" name="should terminate on Unauthorized db existence check" time="0.284">
258
- </testcase>
259
- <testcase classname="test.#unit Fatal errors using CLI for restore" name="should terminate on Forbidden no _writer" time="0.332">
260
- </testcase>
261
- <testcase classname="test.#unit Fatal errors using CLI for restore" name="should terminate on RestoreDatabaseNotFound" time="0.291">
262
- </testcase>
263
- <testcase classname="test.#unit Fatal errors using CLI for restore" name="should terminate on notEmptyDBErr when database is not empty" time="0.274">
264
- </testcase>
265
- <testcase classname="test.#unit Fatal errors using CLI for restore" name="should terminate on notEmptyDBErr when database is not new" time="0.285">
266
- </testcase>
267
- <testcase classname="test.#unit Fatal errors using CLI for restore" name="should terminate on _bulk_docs HTTPFatalError" time="0.31">
268
- </testcase>
269
- <testcase classname="test.#unit Fatal errors using CLI for restore" name="should terminate on _bulk_docs HTTPFatalError from system database" time="0.355">
270
- </testcase>
271
- <testcase classname="test.#unit Fatal errors using CLI for restore" name="should terminate on _bulk_docs HTTPFatalError large stream" time="0.35">
272
- </testcase>
273
- <testcase classname="test.#unit Fatal errors using CLI for restore" name="should terminate on multiple _bulk_docs HTTPFatalError" time="0.334">
274
- </testcase>
275
- </testsuite>
276
- <testsuite name="#unit Fetching batches from a log file" tests="1" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:50:34" time="0.003">
277
- <testcase classname="test.#unit Fetching batches from a log file" name="should fetch multiple batches correctly" time="0.002">
278
- </testcase>
279
- </testsuite>
280
- <testsuite name="#unit Fetching summary from the log file" tests="1" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:50:34" time="0.002">
281
- <testcase classname="test.#unit Fetching summary from the log file" name="should fetch a summary correctly" time="0.001">
282
- </testcase>
283
- </testsuite>
284
- <testsuite name="#unit Default parameters Backup command-line" tests="23" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:50:34" time="0.037">
285
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the COUCH_URL env variable if the --url backup command-line parameter is missing" time="0.014">
286
- </testcase>
287
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the COUCH_DATABASE env variable if the --db backup command-line parameter is missing" time="0.001">
288
- </testcase>
289
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the COUCH_BUFFER_SIZE env variable if the --buffer-size backup command-line parameter is missing" time="0.001">
290
- </testcase>
291
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the COUCH_PARALLELISM env variable if the --parallelism backup command-line parameter is missing" time="0.001">
292
- </testcase>
293
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the COUCH_REQUEST_TIMEOUT env variable if the --request-timeout backup command-line parameter is missing" time="0.001">
294
- </testcase>
295
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the CLOUDANT_IAM_API_KEY env variable if the --iam-api-key backup command-line parameter is missing" time="0.001">
296
- </testcase>
297
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the COUCH_LOG env variable if the --log backup command-line parameter is missing" time="0.001">
298
- </testcase>
299
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the COUCH_RESUME env variable if the --resume backup command-line parameter is missing" time="0">
300
- </testcase>
301
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the COUCH_OUTPUT env variable if the --output backup command-line parameter is missing" time="0.001">
302
- </testcase>
303
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the COUCH_MODE env variable if the --mode backup command-line parameter is missing" time="0.001">
304
- </testcase>
305
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the COUCH_QUIET env variable if the --quiet backup command-line parameter is missing" time="0">
306
- </testcase>
307
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the backup --url command-line parameter" time="0">
308
- </testcase>
309
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the backup --db command-line parameter" time="0">
310
- </testcase>
311
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the backup --buffer-size command-line parameter" time="0.001">
312
- </testcase>
313
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the backup --parallelism command-line parameter" time="0.001">
314
- </testcase>
315
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the backup --request-timeout command-line parameter" time="0.001">
316
- </testcase>
317
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the backup --iam-api-key command-line parameter" time="0">
318
- </testcase>
319
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the backup --log command-line parameter" time="0.001">
320
- </testcase>
321
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the backup --resume command-line parameter" time="0">
322
- </testcase>
323
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the backup --output command-line parameter" time="0">
324
- </testcase>
325
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the backup --mode full command-line parameter" time="0.001">
326
- </testcase>
327
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the backup --mode shallow command-line parameter" time="0.001">
328
- </testcase>
329
- <testcase classname="test.#unit Default parameters Backup command-line" name="respects the backup --quiet command-line parameter" time="0.001">
330
- </testcase>
331
- </testsuite>
332
- <testsuite name="#unit Default parameters Restore command-line" tests="14" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:50:34" time="0.013">
333
- <testcase classname="test.#unit Default parameters Restore command-line" name="respects the COUCH_URL env variable if the --url restore command-line parameter is missing" time="0.001">
334
- </testcase>
335
- <testcase classname="test.#unit Default parameters Restore command-line" name="respects the COUCH_DATABASE env variable if the --db restore command-line parameter is missing" time="0">
336
- </testcase>
337
- <testcase classname="test.#unit Default parameters Restore command-line" name="respects the COUCH_BUFFER_SIZE env variable if the --buffer-size restore command-line parameter is missing" time="0">
338
- </testcase>
339
- <testcase classname="test.#unit Default parameters Restore command-line" name="respects the COUCH_PARALLELISM env variable if the --parallelism restore command-line parameter is missing" time="0.001">
340
- </testcase>
341
- <testcase classname="test.#unit Default parameters Restore command-line" name="respects the COUCH_REQUEST_TIMEOUT env variable if the --request-timeout restore command-line parameter is missing" time="0.001">
342
- </testcase>
343
- <testcase classname="test.#unit Default parameters Restore command-line" name="respects the CLOUDANT_IAM_API_KEY env variable if the --iam-api-key restore command-line parameter is missing" time="0">
344
- </testcase>
345
- <testcase classname="test.#unit Default parameters Restore command-line" name="respects the COUCH_QUIET env variable if the --quiet restorer command-line parameter is missing" time="0">
346
- </testcase>
347
- <testcase classname="test.#unit Default parameters Restore command-line" name="respects the restore --url command-line parameter" time="0.001">
348
- </testcase>
349
- <testcase classname="test.#unit Default parameters Restore command-line" name="respects the restore --db command-line parameter" time="0">
350
- </testcase>
351
- <testcase classname="test.#unit Default parameters Restore command-line" name="respects the restore --buffer-size command-line parameter" time="0">
352
- </testcase>
353
- <testcase classname="test.#unit Default parameters Restore command-line" name="respects the restore --parallelism command-line parameter" time="0">
354
- </testcase>
355
- <testcase classname="test.#unit Default parameters Restore command-line" name="respects the restore --request-timeout command-line parameter" time="0.001">
356
- </testcase>
357
- <testcase classname="test.#unit Default parameters Restore command-line" name="respects the restore --iam-api-key command-line parameter" time="0.001">
358
- </testcase>
359
- <testcase classname="test.#unit Default parameters Restore command-line" name="respects the restore --quiet command-line parameter" time="0">
360
- </testcase>
361
- </testsuite>
362
- <testsuite name="#unit Check request headers" tests="1" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:50:34" time="0.004">
363
- <testcase classname="test.#unit Check request headers" name="should have a couchbackup user-agent" time="0.004">
364
- </testcase>
365
- </testsuite>
366
- <testsuite name="#unit Check request response error callback" tests="8" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:50:34" time="10.591">
367
- <testcase classname="test.#unit Check request response error callback" name="should not callback with error for 200 response" time="0.003">
368
- </testcase>
369
- <testcase classname="test.#unit Check request response error callback" name="should callback with error after 3 500 responses" time="2.014">
370
- </testcase>
371
- <testcase classname="test.#unit Check request response error callback" name="should callback with error after 3 POST 503 responses" time="2.017">
372
- </testcase>
373
- <testcase classname="test.#unit Check request response error callback" name="should callback with error after 3 429 responses" time="2.016">
374
- </testcase>
375
- <testcase classname="test.#unit Check request response error callback" name="should callback with fatal error for 404 response" time="0.004">
376
- </testcase>
377
- <testcase classname="test.#unit Check request response error callback" name="should callback with same error for no status code error response" time="2.014">
378
- </testcase>
379
- <testcase classname="test.#unit Check request response error callback" name="should retry request if HTTP request gets timed out" time="0.509">
380
- </testcase>
381
- <testcase classname="test.#unit Check request response error callback" name="should callback with error code ESOCKETTIMEDOUT if 3 HTTP requests gets timed out" time="2.01">
382
- </testcase>
383
- </testsuite>
384
- <testsuite name="#unit Check request response error callback #unit Check credentials" tests="1" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:50:45" time="0.012">
385
- <testcase classname="test.#unit Check request response error callback #unit Check credentials" name="should properly decode username and password" time="0.011">
386
- </testcase>
387
- </testsuite>
388
- <testsuite name="#unit Perform backup using shallow backup" tests="3" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:50:45" time="0.559">
389
- <testcase classname="test.#unit Perform backup using shallow backup" name="should perform a shallow backup" time="0.019">
390
- </testcase>
391
- <testcase classname="test.#unit Perform backup using shallow backup" name="should perform a shallow backup with transient error" time="0.523">
392
- </testcase>
393
- <testcase classname="test.#unit Perform backup using shallow backup" name="should fail to perform a shallow backup on fatal error" time="0.014">
394
- </testcase>
395
- </testsuite>
396
- <testsuite name="#unit Check spool changes" tests="4" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:50:45" time="15.163">
397
- <testcase classname="test.#unit Check spool changes" name="should terminate on request error" time="2.01">
398
- </testcase>
399
- <testcase classname="test.#unit Check spool changes" name="should terminate on bad HTTP status code response" time="2.015">
400
- </testcase>
401
- <testcase classname="test.#unit Check spool changes" name="should keep collecting changes" time="1.955">
402
- </testcase>
403
- <testcase classname="test.#unit Check spool changes" name="should keep collecting sparse changes" time="9.178">
404
- </testcase>
405
- </testsuite>
406
- <testsuite name="Longer spool changes checks" tests="1" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:51:01" time="49.4">
407
- <testcase classname="test.Longer spool changes checks" name="#slow should keep collecting changes (25M)" time="49.12">
408
- </testcase>
409
- </testsuite>
410
- <testsuite name="#unit Check database restore writer" tests="6" errors="0" failures="0" skipped="0" timestamp="2024-01-11T08:51:50" time="4.101">
411
- <testcase classname="test.#unit Check database restore writer" name="should complete successfully" time="0.024">
412
- </testcase>
413
- <testcase classname="test.#unit Check database restore writer" name="should terminate on a fatal error" time="0.008">
414
- </testcase>
415
- <testcase classname="test.#unit Check database restore writer" name="should retry on transient errors" time="2.019">
416
- </testcase>
417
- <testcase classname="test.#unit Check database restore writer" name="should fail after 3 transient errors" time="2.016">
418
- </testcase>
419
- <testcase classname="test.#unit Check database restore writer" name="should restore shallow backups without rev info successfully" time="0.023">
420
- </testcase>
421
- <testcase classname="test.#unit Check database restore writer" name="should get a batch error for non-empty array response with new_edits false" time="0.007">
422
- </testcase>
423
- </testsuite>
424
- </testsuites>
1
+ // Copyright © 2017, 2023 IBM Corp. All rights reserved.
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ /* global describe it */
16
+ 'use strict';
17
+
18
+ const assert = require('assert');
19
+ const backup = require('../app.js').backup;
20
+ const fs = require('fs');
21
+ const nock = require('nock');
22
+ const util = require('util');
23
+ const backupPromise = util.promisify(backup);
24
+
25
+ const goodUrl = 'http://localhost:5984/db';
26
+ // The real validateArgs function of app.js isn't
27
+ // exported - so we call the exported backup method
28
+ // instead. We don't get as far as a real backup when
29
+ // testing error cases. For success cases we nock the
30
+ // goodUrl and
31
+ const validateArgs = async function(url, opts, errorValidationForAssertRejects) {
32
+ const nullStream = fs.createWriteStream('/dev/null');
33
+ if (url === goodUrl) {
34
+ // Nock the goodUrl
35
+ nock(goodUrl).head('').reply(404, { error: 'not_found', reason: 'missing' });
36
+ }
37
+ return assert.rejects(backupPromise(url, nullStream, opts), errorValidationForAssertRejects);
38
+ };
39
+
40
+ const validateShallowModeArgs = async function(url, opts, msg) {
41
+ // We pass assertNoValidationError because for these shallow opts
42
+ // we are expecting only a stderr warning
43
+ return validateArgs(url, opts, assertNoValidationError()).then(() => {
44
+ // Assert the warning message was in stderr
45
+ assert(capturedStderr.indexOf(msg) > -1, 'Log warning message was not present');
46
+ });
47
+ };
48
+
49
+ const stderrWriteFun = process.stderr.write;
50
+ let capturedStderr;
51
+
52
+ function captureStderr() {
53
+ process.stderr.write = function(string, encoding, fd) {
54
+ capturedStderr += string;
55
+ };
56
+ }
57
+
58
+ function releaseStderr() {
59
+ process.stderr.write = stderrWriteFun;
60
+ capturedStderr = null;
61
+ }
62
+
63
+ // Return a validation object for use with assert.rejects
64
+ function assertErrorMessage(msg) {
65
+ return { name: 'InvalidOption', message: msg };
66
+ }
67
+
68
+ // For cases where validation should pass we reach a real backup that hits a 404
69
+ // mock for a DatabaseNotFound, so that it is the expected in the case assertNoValidationError
70
+ function assertNoValidationError() { return { name: 'DatabaseNotFound' }; }
71
+
72
+ describe('#unit Validate arguments', function() {
73
+ it('returns error for invalid URL type', async function() {
74
+ return validateArgs(true, {}, assertErrorMessage('Invalid URL, must be type string'));
75
+ });
76
+ it('returns no error for valid URL type', async function() {
77
+ return validateArgs(goodUrl, {}, assertNoValidationError());
78
+ });
79
+ it('returns error for invalid (no host) URL', async function() {
80
+ return validateArgs('http://', {}, assertErrorMessage('Invalid URL'));
81
+ });
82
+ it('returns error for invalid (no protocol) URL', async function() {
83
+ return validateArgs('invalid', {}, assertErrorMessage('Invalid URL'));
84
+ });
85
+ it('returns error for invalid (wrong protocol) URL', async function() {
86
+ return validateArgs('ftp://invalid.example.com', {}, assertErrorMessage('Invalid URL protocol.'));
87
+ });
88
+ it('returns error for invalid (no path) URL', async function() {
89
+ return validateArgs('https://invalid.example.com', {}, assertErrorMessage('Invalid URL, missing path element (no database).'));
90
+ });
91
+ it('returns error for invalid (no protocol, no host) URL', async function() {
92
+ return validateArgs('invalid', {}, assertErrorMessage('Invalid URL'));
93
+ });
94
+ it('returns error for invalid buffer size type', async function() {
95
+ return validateArgs(goodUrl, { bufferSize: '123' }, assertErrorMessage('Invalid buffer size option, must be a positive integer in the range (0, MAX_SAFE_INTEGER]'));
96
+ });
97
+ it('returns error for zero buffer size', async function() {
98
+ return validateArgs(goodUrl, { bufferSize: 0 }, assertErrorMessage('Invalid buffer size option, must be a positive integer in the range (0, MAX_SAFE_INTEGER]'));
99
+ });
100
+ it('returns error for float buffer size', async function() {
101
+ return validateArgs(goodUrl, { bufferSize: 1.23 }, assertErrorMessage('Invalid buffer size option, must be a positive integer in the range (0, MAX_SAFE_INTEGER]'));
102
+ });
103
+ it('returns no error for valid buffer size type', async function() {
104
+ return validateArgs(goodUrl, { bufferSize: 123 }, assertNoValidationError());
105
+ });
106
+ it('returns error for invalid log type', async function() {
107
+ return validateArgs(goodUrl, { log: true }, assertErrorMessage('Invalid log option, must be type string'));
108
+ });
109
+ it('returns no error for valid log type', async function() {
110
+ return validateArgs(goodUrl, { log: 'log.txt' }, assertNoValidationError());
111
+ });
112
+ it('returns error for invalid mode type', async function() {
113
+ return validateArgs(goodUrl, { mode: true }, assertErrorMessage('Invalid mode option, must be either "full" or "shallow"'));
114
+ });
115
+ it('returns error for invalid mode string', async function() {
116
+ return validateArgs(goodUrl, { mode: 'foobar' }, assertErrorMessage('Invalid mode option, must be either "full" or "shallow"'));
117
+ });
118
+ it('returns no error for valid mode type', async function() {
119
+ return validateArgs(goodUrl, { mode: 'full' }, assertNoValidationError());
120
+ });
121
+ it('returns error for invalid output type', async function() {
122
+ return validateArgs(goodUrl, { output: true }, assertErrorMessage('Invalid output option, must be type string'));
123
+ });
124
+ it('returns no error for valid output type', async function() {
125
+ return validateArgs(goodUrl, { output: 'output.txt' }, assertNoValidationError());
126
+ });
127
+ it('returns error for invalid parallelism type', async function() {
128
+ return validateArgs(goodUrl, { parallelism: '123' }, assertErrorMessage('Invalid parallelism option, must be a positive integer in the range (0, MAX_SAFE_INTEGER]'));
129
+ });
130
+ it('returns error for zero parallelism', async function() {
131
+ return validateArgs(goodUrl, { parallelism: 0 }, assertErrorMessage('Invalid parallelism option, must be a positive integer in the range (0, MAX_SAFE_INTEGER]'));
132
+ });
133
+ it('returns error for float parallelism', async function() {
134
+ return validateArgs(goodUrl, { parallelism: 1.23 }, assertErrorMessage('Invalid parallelism option, must be a positive integer in the range (0, MAX_SAFE_INTEGER]'));
135
+ });
136
+ it('returns no error for valid parallelism type', async function() {
137
+ return validateArgs(goodUrl, { parallelism: 123 }, assertNoValidationError());
138
+ });
139
+ it('returns error for invalid request timeout type', async function() {
140
+ return validateArgs(goodUrl, { requestTimeout: '123' }, assertErrorMessage('Invalid request timeout option, must be a positive integer in the range (0, MAX_SAFE_INTEGER]'));
141
+ });
142
+ it('returns error for zero request timeout', async function() {
143
+ return validateArgs(goodUrl, { requestTimeout: 0 }, assertErrorMessage('Invalid request timeout option, must be a positive integer in the range (0, MAX_SAFE_INTEGER]'));
144
+ });
145
+ it('returns error for float request timout', async function() {
146
+ return validateArgs(goodUrl, { requestTimeout: 1.23 }, assertErrorMessage('Invalid request timeout option, must be a positive integer in the range (0, MAX_SAFE_INTEGER]'));
147
+ });
148
+ it('returns no error for valid request timeout type', async function() {
149
+ return validateArgs(goodUrl, { requestTimeout: 123 }, assertNoValidationError());
150
+ });
151
+ it('returns error for invalid resume type', async function() {
152
+ return validateArgs(goodUrl, { resume: 'true' }, assertErrorMessage('Invalid resume option, must be type boolean'));
153
+ });
154
+ it('returns no error for valid resume type', async function() {
155
+ return validateArgs(goodUrl, { resume: false }, assertNoValidationError());
156
+ });
157
+ it('returns error for invalid key type', async function() {
158
+ return validateArgs(goodUrl, { iamApiKey: true }, assertErrorMessage('Invalid iamApiKey option, must be type string'));
159
+ });
160
+ it('returns error for key and URL credentials supplied', async function() {
161
+ return validateArgs('https://a:b@example.com/db', { iamApiKey: 'abc123' }, assertErrorMessage('URL user information must not be supplied when using IAM API key.'));
162
+ });
163
+ it('warns for log arg in shallow mode', async function() {
164
+ captureStderr();
165
+ return validateShallowModeArgs(goodUrl, { mode: 'shallow', log: 'test' },
166
+ 'the options "log" and "resume" are invalid when using shallow mode.').finally(
167
+ () => {
168
+ releaseStderr();
169
+ });
170
+ });
171
+ it('warns for resume arg in shallow mode', async function() {
172
+ captureStderr();
173
+ return validateShallowModeArgs(goodUrl, { mode: 'shallow', log: 'test', resume: true },
174
+ 'the options "log" and "resume" are invalid when using shallow mode.').finally(
175
+ () => {
176
+ releaseStderr();
177
+ });
178
+ });
179
+ it('warns for parallelism arg in shallow mode', async function() {
180
+ captureStderr();
181
+ return validateShallowModeArgs(goodUrl, { mode: 'shallow', parallelism: 10 },
182
+ 'the option "parallelism" has no effect when using shallow mode.').finally(
183
+ () => {
184
+ releaseStderr();
185
+ });
186
+ });
187
+ });