@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,4 +1,4 @@
1
- // Copyright © 2017 IBM Corp. All rights reserved.
1
+ // Copyright © 2017, 2023 IBM Corp. All rights reserved.
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -11,31 +11,19 @@
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
-
16
- // stolen from http://strongloop.com/strongblog/practical-examples-of-the-new-node-js-streams-api/
17
- const stream = require('stream');
18
-
19
- module.exports = function(onChange) {
20
- const change = new stream.Transform({ objectMode: true });
21
14
 
22
- change._transform = function(line, encoding, done) {
23
- let obj = null;
24
-
25
- // one change per line - remove the trailing comma
26
- line = line.trim().replace(/,$/, '');
15
+ /* global describe it */
16
+ 'use strict';
27
17
 
28
- // extract thee last_seq at the end of the changes feed
29
- if (line.match(/^"last_seq":/)) {
30
- line = '{' + line;
31
- }
32
- try {
33
- obj = JSON.parse(line);
34
- } catch (e) {
35
- }
36
- onChange(obj);
37
- done();
38
- };
18
+ const u = require('./citestutils.js');
39
19
 
40
- return change;
41
- };
20
+ [{ useApi: true }, { useApi: false }].forEach(function(params) {
21
+ describe(u.scenario('#slowest End to end backup and restore', params), function() {
22
+ // 10 GB is about the largest the CI can handle before getting very upset
23
+ // about how long things are taking
24
+ it('should backup and restore largedb10g', async function() {
25
+ u.setTimeout(this, 350 * 60);
26
+ return u.testDirectBackupAndRestore(params, 'largedb10g', this.dbName);
27
+ });
28
+ });
29
+ });
@@ -1,4 +1,4 @@
1
- // Copyright © 2017, 2021 IBM Corp. All rights reserved.
1
+ // Copyright © 2017, 2023 IBM Corp. All rights reserved.
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -11,103 +11,52 @@
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
-
16
- // fatal errors
17
- const codes = {
18
- Error: 1,
19
- InvalidOption: 2,
20
- DatabaseNotFound: 10,
21
- Unauthorized: 11,
22
- Forbidden: 12,
23
- DatabaseNotEmpty: 13,
24
- NoLogFileName: 20,
25
- LogDoesNotExist: 21,
26
- IncompleteChangesInLogFile: 22,
27
- SpoolChangesError: 30,
28
- HTTPFatalError: 40,
29
- BulkGetError: 50
30
- };
31
-
32
- class BackupError extends Error {
33
- constructor(name, message) {
34
- super(message);
35
- this.name = name;
36
- }
37
- }
38
-
39
- class HTTPError extends BackupError {
40
- constructor(responseError, name) {
41
- // Special case some names for more useful error messages
42
- switch (responseError.status) {
43
- case 401:
44
- name = 'Unauthorized';
45
- break;
46
- case 403:
47
- name = 'Forbidden';
48
- break;
49
- default:
50
- name = name || 'HTTPFatalError';
51
- }
52
- super(name, responseError.message);
53
- }
54
- }
55
14
 
56
- // Default function to return an error for HTTP status codes
57
- // < 400 -> OK
58
- // 4XX (except 429) -> Fatal
59
- // 429 & >=500 -> Transient
60
- function checkResponse(err) {
61
- if (err) {
62
- // Construct an HTTPError if there is request information on the error
63
- // Codes < 400 are considered OK
64
- if (err.status >= 400) {
65
- return new HTTPError(err);
66
- } else {
67
- // Send it back again if there was no status code, e.g. a cxn error
68
- return augmentMessage(err);
69
- }
70
- }
71
- }
72
-
73
- function convertResponseError(responseError, errorFactory) {
74
- if (!errorFactory) {
75
- errorFactory = checkResponse;
76
- }
77
- return errorFactory(responseError);
78
- }
79
-
80
- function augmentMessage(err) {
81
- // For errors that don't have a status code, we are likely looking at a cxn
82
- // error.
83
- // Try to augment the message with more detail (core puts the code in statusText)
84
- if (err && err.statusText) {
85
- err.message = `${err.message} ${err.statusText}`;
86
- }
87
- if (err && err.description) {
88
- err.message = `${err.message} ${err.description}`;
89
- }
90
- return err;
91
- }
92
-
93
- function wrapPossibleInvalidUrlError(err) {
94
- if (err.code === 'ERR_INVALID_URL') {
95
- // Wrap ERR_INVALID_URL in our own InvalidOption
96
- return new BackupError('InvalidOption', err.message);
97
- }
98
- return err;
99
- }
15
+ /* global describe it */
16
+ 'use strict';
100
17
 
101
- module.exports = {
102
- BackupError,
103
- HTTPError,
104
- wrapPossibleInvalidUrlError,
105
- convertResponseError,
106
- terminationCallback: function terminationCallback(err, data) {
107
- if (err) {
108
- console.error(`ERROR: ${err.message}`);
109
- process.exitCode = codes[err.name] || 1;
110
- process.exit();
111
- }
112
- }
113
- };
18
+ const fs = require('fs');
19
+ const { once } = require('node:events');
20
+ const u = require('./citestutils.js');
21
+
22
+ [{ useApi: true }, { useApi: false }].forEach(function(params) {
23
+ describe(u.scenario('Compression tests', params), function() {
24
+ const p = u.p(params, { compression: true });
25
+
26
+ it('should backup animaldb to a compressed file', async function() {
27
+ // Allow up to 60 s for backup of animaldb
28
+ u.setTimeout(this, 60);
29
+ const compressedBackup = `./${this.fileName}`;
30
+ const output = fs.createWriteStream(compressedBackup);
31
+ return once(output, 'open')
32
+ .then(() => {
33
+ return u.testBackup(p, 'animaldb', output);
34
+ }).then(() => {
35
+ return u.assertGzipFile(compressedBackup);
36
+ });
37
+ });
38
+
39
+ it('should backup and restore animaldb via a compressed file', async function() {
40
+ // Allow up to 60 s for backup and restore of animaldb
41
+ u.setTimeout(this, 60);
42
+ const compressedBackup = `./${this.fileName}`;
43
+ return u.testBackupAndRestoreViaFile(p, 'animaldb', compressedBackup, this.dbName).then(() => {
44
+ return u.assertGzipFile(compressedBackup);
45
+ });
46
+ });
47
+
48
+ it('should backup and restore animaldb via a compressed stream', async function() {
49
+ // Allow up to 60 s for backup and restore of animaldb
50
+ u.setTimeout(this, 60);
51
+ return u.testDirectBackupAndRestore(p, 'animaldb', this.dbName);
52
+ });
53
+
54
+ it('should backup and restore largedb2g via a compressed file #slower', async function() {
55
+ // Takes ~ 25 min using CLI, but sometimes over an hour with API
56
+ u.setTimeout(this, 180 * 60);
57
+ const compressedBackup = `./${this.fileName}`;
58
+ params.compression = true;
59
+ return u.testBackupAndRestoreViaFile(p, 'largedb2g', compressedBackup, this.dbName);
60
+ });
61
+ });
62
+ });
@@ -1,4 +1,4 @@
1
- // Copyright © 2017, 2021 IBM Corp. All rights reserved.
1
+ // Copyright © 2018, 2023 IBM Corp. All rights reserved.
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -11,154 +11,65 @@
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
-
16
- const async = require('async');
17
- const stream = require('stream');
18
- const error = require('./error.js');
19
- const debug = require('debug')('couchbackup:writer');
20
-
21
- module.exports = function(db, bufferSize, parallelism, ee) {
22
- const writer = new stream.Transform({ objectMode: true });
23
- let buffer = [];
24
- let written = 0;
25
- let linenumber = 0;
26
-
27
- // this is the queue of chunks that are written to the database
28
- // the queue's payload will be an array of documents to be written,
29
- // the size of the array will be bufferSize. The variable parallelism
30
- // determines how many HTTP requests will occur at any one time.
31
- const q = async.queue(function(payload, cb) {
32
- // if we are restoring known revisions, we need to supply new_edits=false
33
- if (payload.docs && payload.docs[0] && payload.docs[0]._rev) {
34
- payload.new_edits = false;
35
- debug('Using new_edits false mode.');
36
- }
37
-
38
- if (!didError) {
39
- db.service.postBulkDocs({
40
- db: db.db,
41
- bulkDocs: payload
42
- }).then(response => {
43
- if (!response.result || (payload.new_edits === false && response.result.length > 0)) {
44
- throw new Error(`Error writing batch with new_edits:${payload.new_edits !== false}` +
45
- ` and ${response.result ? response.result.length : 'unavailable'} items`);
46
- }
47
- written += payload.docs.length;
48
- writer.emit('restored', { documents: payload.docs.length, total: written });
49
- cb();
50
- }).catch(err => {
51
- err = error.convertResponseError(err);
52
- debug(`Error writing docs ${err.name} ${err.message}`);
53
- cb(err, payload);
54
- });
55
- }
56
- }, parallelism);
57
-
58
- let didError = false;
59
-
60
- // write the contents of the buffer to CouchDB in blocks of bufferSize
61
- function processBuffer(flush, callback) {
62
- function taskCallback(err, payload) {
63
- if (err && !didError) {
64
- debug(`Queue task failed with error ${err.name}`);
65
- didError = true;
66
- q.kill();
67
- writer.emit('error', err);
68
- }
69
- }
70
14
 
71
- if (flush || buffer.length >= bufferSize) {
72
- // work through the buffer to break off bufferSize chunks
73
- // and feed the chunks to the queue
74
- do {
75
- // split the buffer into bufferSize chunks
76
- const toSend = buffer.splice(0, bufferSize);
77
-
78
- // and add the chunk to the queue
79
- debug(`Adding ${toSend.length} to the write queue.`);
80
- q.push({ docs: toSend }, taskCallback);
81
- } while (buffer.length >= bufferSize);
15
+ /* global describe it */
16
+ 'use strict';
82
17
 
83
- // send any leftover documents to the queue
84
- if (flush && buffer.length > 0) {
85
- debug(`Adding remaining ${buffer.length} to the write queue.`);
86
- q.push({ docs: buffer }, taskCallback);
87
- }
18
+ const fs = require('fs');
19
+ const { once } = require('node:events');
20
+ const readline = require('readline');
21
+ const u = require('./citestutils.js');
22
+ const uuid = require('uuid').v4;
88
23
 
89
- // wait until the queue size falls to a reasonable level
90
- async.until(
91
- // wait until the queue length drops to twice the paralellism
92
- // or until empty on the last write
93
- function(callback) {
94
- // if we encountered an error, stop this until loop
95
- if (didError) {
96
- return callback(null, true);
97
- }
98
- if (flush) {
99
- callback(null, q.idle() && q.length() === 0);
100
- } else {
101
- callback(null, q.length() <= parallelism * 2);
102
- }
103
- },
104
- function(cb) {
105
- setTimeout(cb, 20);
106
- },
24
+ const params = { useApi: true };
107
25
 
108
- function() {
109
- if (flush && !didError) {
110
- writer.emit('finished', { total: written });
111
- }
112
- // callback when we're happy with the queue size
113
- callback();
114
- });
115
- } else {
116
- callback();
117
- }
118
- }
26
+ describe(u.scenario('Concurrent database backups', params), function() {
27
+ it('should run concurrent API database backups correctly #slower', async function() {
28
+ // Allow up to 900 s to backup and compare (it should be much faster)!
29
+ u.setTimeout(this, 900);
119
30
 
120
- // take an object
121
- writer._transform = function(obj, encoding, done) {
122
- // each obj that arrives here is a line from the backup file
123
- // it should contain an array of objects. The length of the array
124
- // depends on the bufferSize at backup time.
125
- linenumber++;
126
- if (!didError && obj !== '') {
127
- // see if it parses as JSON
128
- try {
129
- const arr = JSON.parse(obj);
31
+ const checkForEmptyBatches = async function(fileName) {
32
+ let foundEmptyBatch = false;
130
33
 
131
- // if it's an array with a length
132
- if (typeof arr === 'object' && arr.length > 0) {
133
- // push each document into a buffer
134
- buffer = buffer.concat(arr);
34
+ const rd = readline.createInterface({
35
+ input: fs.createReadStream(fileName),
36
+ output: fs.createWriteStream('/dev/null'),
37
+ terminal: false
38
+ });
135
39
 
136
- // pause the stream
137
- // it's likely that the speed with which data can be read from disk
138
- // may exceed the rate it can be written to CouchDB. To prevent
139
- // the whole file being buffered in memory, we pause the stream here.
140
- // it is resumed, when processBuffer calls back and we call done()
141
- this.pause();
40
+ rd.on('line', function(line) {
41
+ if (JSON.parse(line).length === 0) {
42
+ // Note: Empty batch arrays indicate that the running backup is
43
+ // incorrectly sharing a log file with another ongoing backup job.
44
+ foundEmptyBatch = true;
45
+ }
46
+ });
142
47
 
143
- // break the buffer in to bufferSize chunks to be written to the database
144
- processBuffer(false, done);
48
+ rd.on('close', function() {
49
+ if (foundEmptyBatch) {
50
+ return Promise.reject(new Error(`Log file '${fileName}' contains empty batches`));
145
51
  } else {
146
- ee.emit('error', new error.BackupError('BackupFileJsonError', `Error on line ${linenumber} of backup file - not an array`));
147
- done();
52
+ return Promise.resolve();
148
53
  }
149
- } catch (e) {
150
- ee.emit('error', new error.BackupError('BackupFileJsonError', `Error on line ${linenumber} of backup file - cannot parse as JSON`));
151
- // Could be an incomplete write that was subsequently resumed
152
- done();
153
- }
154
- } else {
155
- done();
156
- }
157
- };
54
+ });
55
+ };
56
+
57
+ const backupPromise = async function() {
58
+ const actualBackup = `./${uuid()}`;
59
+ const output = fs.createWriteStream(actualBackup);
60
+ return once(output, 'open').then(() => {
61
+ return u.testBackup(params, 'largedb1g', output);
62
+ }).then(() => {
63
+ return checkForEmptyBatches(actualBackup);
64
+ });
65
+ };
66
+
67
+ // [1] Run 'largedb1g' database backup
68
+ const backup1 = backupPromise();
69
+
70
+ // [2] Run 'largedb1g' database backup
71
+ const backup2 = backupPromise();
158
72
 
159
- // called when we need to flush everything
160
- writer._flush = function(done) {
161
- processBuffer(true, done);
162
- };
163
- return writer;
164
- };
73
+ return Promise.all([backup1, backup2]);
74
+ });
75
+ });