@cloudant/couchbackup 2.9.12-SNAPSHOT.135 → 2.9.12

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 (395) hide show
  1. package/.scannerwork/report-task.txt +2 -2
  2. package/.scannerwork/scanner-report/analysis-warnings.pb +2 -2
  3. package/.scannerwork/scanner-report/analysis.log +1 -1
  4. package/.scannerwork/scanner-report/changesets-20.pb +1 -0
  5. package/.scannerwork/scanner-report/changesets-22.pb +1 -0
  6. package/.scannerwork/scanner-report/changesets-23.pb +1 -0
  7. package/.scannerwork/scanner-report/changesets-24.pb +1 -0
  8. package/.scannerwork/scanner-report/changesets-25.pb +1 -0
  9. package/.scannerwork/scanner-report/changesets-26.pb +1 -0
  10. package/.scannerwork/scanner-report/changesets-27.pb +1 -0
  11. package/.scannerwork/scanner-report/changesets-28.pb +1 -0
  12. package/.scannerwork/scanner-report/changesets-29.pb +1 -0
  13. package/.scannerwork/scanner-report/changesets-30.pb +1 -0
  14. package/.scannerwork/scanner-report/changesets-44.pb +1 -0
  15. package/.scannerwork/scanner-report/changesets-45.pb +1 -0
  16. package/.scannerwork/scanner-report/changesets-46.pb +1 -0
  17. package/.scannerwork/scanner-report/changesets-47.pb +1 -0
  18. package/.scannerwork/scanner-report/component-1.pb +2 -2
  19. package/.scannerwork/scanner-report/component-10.pb +1 -1
  20. package/.scannerwork/scanner-report/component-11.pb +1 -1
  21. package/.scannerwork/scanner-report/component-12.pb +1 -1
  22. package/.scannerwork/scanner-report/component-13.pb +1 -1
  23. package/.scannerwork/scanner-report/component-14.pb +1 -1
  24. package/.scannerwork/scanner-report/component-15.pb +1 -1
  25. package/.scannerwork/scanner-report/component-16.pb +1 -1
  26. package/.scannerwork/scanner-report/component-17.pb +1 -1
  27. package/.scannerwork/scanner-report/component-18.pb +1 -1
  28. package/.scannerwork/scanner-report/component-19.pb +1 -1
  29. package/.scannerwork/scanner-report/component-20.pb +1 -0
  30. package/.scannerwork/scanner-report/component-22.pb +1 -0
  31. package/.scannerwork/scanner-report/component-23.pb +1 -0
  32. package/.scannerwork/scanner-report/component-24.pb +1 -0
  33. package/.scannerwork/scanner-report/component-25.pb +1 -0
  34. package/.scannerwork/scanner-report/component-26.pb +1 -0
  35. package/.scannerwork/scanner-report/component-27.pb +1 -0
  36. package/.scannerwork/scanner-report/component-28.pb +1 -0
  37. package/.scannerwork/scanner-report/component-29.pb +1 -0
  38. package/.scannerwork/scanner-report/component-30.pb +1 -0
  39. package/.scannerwork/scanner-report/component-42.pb +1 -1
  40. package/.scannerwork/scanner-report/component-43.pb +1 -1
  41. package/.scannerwork/scanner-report/component-44.pb +1 -0
  42. package/.scannerwork/scanner-report/component-45.pb +1 -0
  43. package/.scannerwork/scanner-report/component-46.pb +1 -0
  44. package/.scannerwork/scanner-report/component-47.pb +1 -0
  45. package/.scannerwork/scanner-report/component-48.pb +1 -1
  46. package/.scannerwork/scanner-report/component-49.pb +1 -1
  47. package/.scannerwork/scanner-report/component-5.pb +1 -1
  48. package/.scannerwork/scanner-report/component-50.pb +1 -1
  49. package/.scannerwork/scanner-report/component-51.pb +1 -1
  50. package/.scannerwork/scanner-report/component-52.pb +1 -1
  51. package/.scannerwork/scanner-report/component-53.pb +1 -1
  52. package/.scannerwork/scanner-report/component-54.pb +1 -1
  53. package/.scannerwork/scanner-report/component-55.pb +1 -1
  54. package/.scannerwork/scanner-report/component-56.pb +1 -1
  55. package/.scannerwork/scanner-report/component-58.pb +1 -1
  56. package/.scannerwork/scanner-report/component-6.pb +1 -1
  57. package/.scannerwork/scanner-report/component-61.pb +1 -1
  58. package/.scannerwork/scanner-report/component-64.pb +1 -1
  59. package/.scannerwork/scanner-report/component-68.pb +1 -0
  60. package/.scannerwork/scanner-report/component-7.pb +1 -1
  61. package/.scannerwork/scanner-report/component-8.pb +1 -1
  62. package/.scannerwork/scanner-report/component-9.pb +1 -1
  63. package/.scannerwork/scanner-report/coverages-10.pb +0 -0
  64. package/.scannerwork/scanner-report/coverages-11.pb +0 -0
  65. package/.scannerwork/scanner-report/coverages-12.pb +0 -0
  66. package/.scannerwork/scanner-report/coverages-13.pb +0 -0
  67. package/.scannerwork/scanner-report/coverages-14.pb +0 -0
  68. package/.scannerwork/scanner-report/coverages-15.pb +0 -0
  69. package/.scannerwork/scanner-report/coverages-16.pb +0 -0
  70. package/.scannerwork/scanner-report/coverages-17.pb +0 -0
  71. package/.scannerwork/scanner-report/coverages-18.pb +0 -0
  72. package/.scannerwork/scanner-report/coverages-19.pb +0 -0
  73. package/.scannerwork/scanner-report/coverages-20.pb +0 -0
  74. package/.scannerwork/scanner-report/coverages-22.pb +0 -0
  75. package/.scannerwork/scanner-report/coverages-24.pb +0 -0
  76. package/.scannerwork/scanner-report/coverages-25.pb +0 -0
  77. package/.scannerwork/scanner-report/coverages-26.pb +0 -0
  78. package/.scannerwork/scanner-report/coverages-28.pb +0 -0
  79. package/.scannerwork/scanner-report/coverages-30.pb +0 -0
  80. package/.scannerwork/scanner-report/coverages-42.pb +0 -0
  81. package/.scannerwork/scanner-report/coverages-43.pb +0 -0
  82. package/.scannerwork/scanner-report/coverages-45.pb +0 -0
  83. package/.scannerwork/scanner-report/coverages-46.pb +0 -0
  84. package/.scannerwork/scanner-report/coverages-48.pb +0 -0
  85. package/.scannerwork/scanner-report/coverages-49.pb +0 -0
  86. package/.scannerwork/scanner-report/coverages-5.pb +0 -0
  87. package/.scannerwork/scanner-report/coverages-50.pb +0 -0
  88. package/.scannerwork/scanner-report/coverages-51.pb +0 -0
  89. package/.scannerwork/scanner-report/coverages-52.pb +0 -0
  90. package/.scannerwork/scanner-report/coverages-53.pb +0 -0
  91. package/.scannerwork/scanner-report/coverages-54.pb +0 -0
  92. package/.scannerwork/scanner-report/coverages-55.pb +0 -0
  93. package/.scannerwork/scanner-report/coverages-56.pb +0 -0
  94. package/.scannerwork/scanner-report/coverages-58.pb +0 -0
  95. package/.scannerwork/scanner-report/coverages-6.pb +0 -0
  96. package/.scannerwork/scanner-report/coverages-64.pb +0 -0
  97. package/.scannerwork/scanner-report/coverages-7.pb +0 -0
  98. package/.scannerwork/scanner-report/coverages-8.pb +0 -0
  99. package/.scannerwork/scanner-report/coverages-9.pb +0 -0
  100. package/.scannerwork/scanner-report/duplications-10.pb +0 -2
  101. package/.scannerwork/scanner-report/duplications-11.pb +0 -3
  102. package/.scannerwork/scanner-report/duplications-15.pb +2 -0
  103. package/.scannerwork/scanner-report/duplications-16.pb +0 -3
  104. package/.scannerwork/scanner-report/duplications-24.pb +2 -0
  105. package/.scannerwork/scanner-report/duplications-26.pb +3 -0
  106. package/.scannerwork/scanner-report/duplications-30.pb +3 -0
  107. package/.scannerwork/scanner-report/duplications-42.pb +0 -2
  108. package/.scannerwork/scanner-report/duplications-43.pb +0 -2
  109. package/.scannerwork/scanner-report/duplications-5.pb +2 -2
  110. package/.scannerwork/scanner-report/duplications-52.pb +3 -0
  111. package/.scannerwork/scanner-report/duplications-55.pb +2 -0
  112. package/.scannerwork/scanner-report/duplications-6.pb +2 -0
  113. package/.scannerwork/scanner-report/duplications-8.pb +0 -3
  114. package/.scannerwork/scanner-report/duplications-9.pb +2 -0
  115. package/.scannerwork/scanner-report/measures-10.pb +0 -0
  116. package/.scannerwork/scanner-report/measures-11.pb +0 -0
  117. package/.scannerwork/scanner-report/measures-12.pb +0 -0
  118. package/.scannerwork/scanner-report/measures-13.pb +0 -0
  119. package/.scannerwork/scanner-report/measures-14.pb +0 -0
  120. package/.scannerwork/scanner-report/measures-15.pb +0 -0
  121. package/.scannerwork/scanner-report/measures-16.pb +0 -0
  122. package/.scannerwork/scanner-report/measures-17.pb +0 -0
  123. package/.scannerwork/scanner-report/measures-18.pb +0 -0
  124. package/.scannerwork/scanner-report/measures-19.pb +0 -0
  125. package/.scannerwork/scanner-report/measures-20.pb +0 -0
  126. package/.scannerwork/scanner-report/measures-22.pb +0 -0
  127. package/.scannerwork/scanner-report/measures-24.pb +0 -0
  128. package/.scannerwork/scanner-report/measures-25.pb +0 -0
  129. package/.scannerwork/scanner-report/measures-26.pb +0 -0
  130. package/.scannerwork/scanner-report/measures-28.pb +0 -0
  131. package/.scannerwork/scanner-report/measures-30.pb +0 -0
  132. package/.scannerwork/scanner-report/measures-42.pb +0 -0
  133. package/.scannerwork/scanner-report/measures-43.pb +0 -0
  134. package/.scannerwork/scanner-report/measures-45.pb +0 -0
  135. package/.scannerwork/scanner-report/measures-46.pb +0 -0
  136. package/.scannerwork/scanner-report/measures-48.pb +0 -0
  137. package/.scannerwork/scanner-report/measures-49.pb +0 -0
  138. package/.scannerwork/scanner-report/measures-5.pb +0 -0
  139. package/.scannerwork/scanner-report/measures-50.pb +0 -0
  140. package/.scannerwork/scanner-report/measures-51.pb +0 -0
  141. package/.scannerwork/scanner-report/measures-52.pb +0 -0
  142. package/.scannerwork/scanner-report/measures-53.pb +0 -0
  143. package/.scannerwork/scanner-report/measures-54.pb +0 -0
  144. package/.scannerwork/scanner-report/measures-55.pb +0 -0
  145. package/.scannerwork/scanner-report/measures-56.pb +0 -0
  146. package/.scannerwork/scanner-report/measures-58.pb +0 -0
  147. package/.scannerwork/scanner-report/measures-6.pb +0 -0
  148. package/.scannerwork/scanner-report/measures-61.pb +0 -0
  149. package/.scannerwork/scanner-report/measures-64.pb +0 -0
  150. package/.scannerwork/scanner-report/measures-7.pb +0 -0
  151. package/.scannerwork/scanner-report/measures-8.pb +0 -0
  152. package/.scannerwork/scanner-report/measures-9.pb +0 -0
  153. package/.scannerwork/scanner-report/metadata.pb +0 -0
  154. package/.scannerwork/scanner-report/source-10.txt +87 -201
  155. package/.scannerwork/scanner-report/source-11.txt +36 -113
  156. package/.scannerwork/scanner-report/source-12.txt +22 -49
  157. package/.scannerwork/scanner-report/source-13.txt +115 -78
  158. package/.scannerwork/scanner-report/source-14.txt +146 -45
  159. package/.scannerwork/scanner-report/source-15.txt +58 -30
  160. package/.scannerwork/scanner-report/source-16.txt +103 -229
  161. package/.scannerwork/scanner-report/source-17.txt +89 -21
  162. package/.scannerwork/scanner-report/source-18.txt +164 -20
  163. package/.scannerwork/scanner-report/source-19.txt +17 -128
  164. package/.scannerwork/scanner-report/source-2.txt +151 -151
  165. package/.scannerwork/scanner-report/source-20.txt +281 -0
  166. package/.scannerwork/scanner-report/source-22.txt +56 -0
  167. package/.scannerwork/scanner-report/source-24.txt +145 -0
  168. package/.scannerwork/scanner-report/source-25.txt +34 -0
  169. package/.scannerwork/scanner-report/source-26.txt +119 -0
  170. package/.scannerwork/scanner-report/source-28.txt +47 -0
  171. package/.scannerwork/scanner-report/source-30.txt +131 -0
  172. package/.scannerwork/scanner-report/source-42.txt +348 -157
  173. package/.scannerwork/scanner-report/source-43.txt +122 -165
  174. package/.scannerwork/scanner-report/source-45.txt +142 -0
  175. package/.scannerwork/scanner-report/source-46.txt +68 -0
  176. package/.scannerwork/scanner-report/source-48.txt +22 -115
  177. package/.scannerwork/scanner-report/source-49.txt +81 -35
  178. package/.scannerwork/scanner-report/source-5.txt +152 -122
  179. package/.scannerwork/scanner-report/source-50.txt +598 -19
  180. package/.scannerwork/scanner-report/source-51.txt +46 -58
  181. package/.scannerwork/scanner-report/source-52.txt +227 -147
  182. package/.scannerwork/scanner-report/source-53.txt +45 -160
  183. package/.scannerwork/scanner-report/source-54.txt +12 -75
  184. package/.scannerwork/scanner-report/source-55.txt +194 -250
  185. package/.scannerwork/scanner-report/source-56.txt +78 -104
  186. package/.scannerwork/scanner-report/source-58.txt +94 -21
  187. package/.scannerwork/scanner-report/source-6.txt +167 -45
  188. package/.scannerwork/scanner-report/source-61.txt +509 -104
  189. package/.scannerwork/scanner-report/source-64.txt +401 -39
  190. package/.scannerwork/scanner-report/{source-37.txt → source-68.txt} +50 -50
  191. package/.scannerwork/scanner-report/source-7.txt +32 -133
  192. package/.scannerwork/scanner-report/source-8.txt +57 -96
  193. package/.scannerwork/scanner-report/source-9.txt +75 -12
  194. package/.scannerwork/scanner-report/symbols-10.pb +58 -417
  195. package/.scannerwork/scanner-report/symbols-11.pb +15 -97
  196. package/.scannerwork/scanner-report/symbols-12.pb +17 -35
  197. package/.scannerwork/scanner-report/symbols-13.pb +33 -60
  198. package/.scannerwork/scanner-report/symbols-14.pb +125 -42
  199. package/.scannerwork/scanner-report/symbols-15.pb +41 -26
  200. package/.scannerwork/scanner-report/symbols-16.pb +30 -394
  201. package/.scannerwork/scanner-report/symbols-17.pb +42 -11
  202. package/.scannerwork/scanner-report/symbols-18.pb +143 -9
  203. package/.scannerwork/scanner-report/symbols-19.pb +14 -116
  204. package/.scannerwork/scanner-report/symbols-20.pb +354 -0
  205. package/.scannerwork/scanner-report/symbols-22.pb +19 -0
  206. package/.scannerwork/scanner-report/symbols-24.pb +102 -0
  207. package/.scannerwork/scanner-report/symbols-25.pb +10 -0
  208. package/.scannerwork/scanner-report/symbols-26.pb +77 -0
  209. package/.scannerwork/scanner-report/symbols-28.pb +27 -0
  210. package/.scannerwork/scanner-report/symbols-30.pb +97 -0
  211. package/.scannerwork/scanner-report/symbols-42.pb +486 -145
  212. package/.scannerwork/scanner-report/symbols-43.pb +85 -180
  213. package/.scannerwork/scanner-report/symbols-45.pb +116 -0
  214. package/.scannerwork/scanner-report/symbols-46.pb +45 -0
  215. package/.scannerwork/scanner-report/symbols-48.pb +11 -33
  216. package/.scannerwork/scanner-report/symbols-49.pb +68 -14
  217. package/.scannerwork/scanner-report/symbols-5.pb +152 -101
  218. package/.scannerwork/scanner-report/symbols-50.pb +1253 -19
  219. package/.scannerwork/scanner-report/symbols-51.pb +33 -43
  220. package/.scannerwork/scanner-report/symbols-52.pb +394 -126
  221. package/.scannerwork/scanner-report/symbols-53.pb +42 -143
  222. package/.scannerwork/scanner-report/symbols-54.pb +9 -44
  223. package/.scannerwork/scanner-report/symbols-55.pb +377 -313
  224. package/.scannerwork/scanner-report/symbols-56.pb +60 -30
  225. package/.scannerwork/scanner-report/symbols-58.pb +28 -18
  226. package/.scannerwork/scanner-report/symbols-6.pb +180 -45
  227. package/.scannerwork/scanner-report/symbols-64.pb +610 -19
  228. package/.scannerwork/scanner-report/symbols-7.pb +19 -84
  229. package/.scannerwork/scanner-report/symbols-8.pb +41 -72
  230. package/.scannerwork/scanner-report/symbols-9.pb +44 -9
  231. package/.scannerwork/scanner-report/syntax-highlightings-10.pb +96 -294
  232. package/.scannerwork/scanner-report/syntax-highlightings-11.pb +25 -153
  233. package/.scannerwork/scanner-report/syntax-highlightings-12.pb +21 -66
  234. package/.scannerwork/scanner-report/syntax-highlightings-13.pb +89 -70
  235. package/.scannerwork/scanner-report/syntax-highlightings-14.pb +178 -47
  236. package/.scannerwork/scanner-report/syntax-highlightings-15.pb +44 -34
  237. package/.scannerwork/scanner-report/syntax-highlightings-16.pb +83 -299
  238. package/.scannerwork/scanner-report/syntax-highlightings-17.pb +87 -30
  239. package/.scannerwork/scanner-report/syntax-highlightings-18.pb +209 -16
  240. package/.scannerwork/scanner-report/syntax-highlightings-19.pb +15 -104
  241. package/.scannerwork/scanner-report/syntax-highlightings-2.pb +109 -110
  242. package/.scannerwork/scanner-report/syntax-highlightings-20.pb +285 -0
  243. package/.scannerwork/scanner-report/syntax-highlightings-22.pb +82 -0
  244. package/.scannerwork/scanner-report/syntax-highlightings-24.pb +227 -0
  245. package/.scannerwork/scanner-report/syntax-highlightings-25.pb +50 -0
  246. package/.scannerwork/scanner-report/syntax-highlightings-26.pb +158 -0
  247. package/.scannerwork/scanner-report/syntax-highlightings-28.pb +68 -0
  248. package/.scannerwork/scanner-report/syntax-highlightings-30.pb +182 -0
  249. package/.scannerwork/scanner-report/syntax-highlightings-42.pb +572 -156
  250. package/.scannerwork/scanner-report/syntax-highlightings-43.pb +146 -180
  251. package/.scannerwork/scanner-report/syntax-highlightings-45.pb +134 -0
  252. package/.scannerwork/scanner-report/syntax-highlightings-46.pb +110 -0
  253. package/.scannerwork/scanner-report/syntax-highlightings-48.pb +26 -96
  254. package/.scannerwork/scanner-report/syntax-highlightings-49.pb +75 -24
  255. package/.scannerwork/scanner-report/syntax-highlightings-5.pb +183 -196
  256. package/.scannerwork/scanner-report/syntax-highlightings-50.pb +856 -33
  257. package/.scannerwork/scanner-report/syntax-highlightings-51.pb +60 -60
  258. package/.scannerwork/scanner-report/syntax-highlightings-52.pb +284 -168
  259. package/.scannerwork/scanner-report/syntax-highlightings-53.pb +46 -207
  260. package/.scannerwork/scanner-report/syntax-highlightings-54.pb +15 -57
  261. package/.scannerwork/scanner-report/syntax-highlightings-55.pb +219 -173
  262. package/.scannerwork/scanner-report/syntax-highlightings-56.pb +80 -83
  263. package/.scannerwork/scanner-report/syntax-highlightings-58.pb +108 -20
  264. package/.scannerwork/scanner-report/syntax-highlightings-6.pb +180 -65
  265. package/.scannerwork/scanner-report/syntax-highlightings-61.pb +3737 -105
  266. package/.scannerwork/scanner-report/syntax-highlightings-64.pb +624 -58
  267. package/.scannerwork/scanner-report/{syntax-highlightings-37.pb → syntax-highlightings-68.pb} +19 -19
  268. package/.scannerwork/scanner-report/syntax-highlightings-7.pb +35 -162
  269. package/.scannerwork/scanner-report/syntax-highlightings-8.pb +58 -121
  270. package/.scannerwork/scanner-report/syntax-highlightings-9.pb +57 -15
  271. package/.secrets.baseline +2 -2
  272. package/CHANGES.md +3 -0
  273. package/package.json +2 -2
  274. package/test-16-results.xml +148 -148
  275. package/test-18-results.xml +151 -151
  276. package/test-iam-18-results.xml +50 -50
  277. package/.scannerwork/scanner-report/changesets-3.pb +0 -1
  278. package/.scannerwork/scanner-report/changesets-31.pb +0 -1
  279. package/.scannerwork/scanner-report/changesets-32.pb +0 -1
  280. package/.scannerwork/scanner-report/changesets-33.pb +0 -1
  281. package/.scannerwork/scanner-report/changesets-34.pb +0 -1
  282. package/.scannerwork/scanner-report/changesets-35.pb +0 -1
  283. package/.scannerwork/scanner-report/changesets-38.pb +0 -1
  284. package/.scannerwork/scanner-report/changesets-4.pb +0 -1
  285. package/.scannerwork/scanner-report/changesets-57.pb +0 -1
  286. package/.scannerwork/scanner-report/changesets-59.pb +0 -1
  287. package/.scannerwork/scanner-report/changesets-60.pb +0 -1
  288. package/.scannerwork/scanner-report/changesets-61.pb +0 -1
  289. package/.scannerwork/scanner-report/changesets-65.pb +0 -1
  290. package/.scannerwork/scanner-report/changesets-66.pb +0 -1
  291. package/.scannerwork/scanner-report/component-3.pb +0 -1
  292. package/.scannerwork/scanner-report/component-31.pb +0 -1
  293. package/.scannerwork/scanner-report/component-32.pb +0 -1
  294. package/.scannerwork/scanner-report/component-33.pb +0 -1
  295. package/.scannerwork/scanner-report/component-34.pb +0 -1
  296. package/.scannerwork/scanner-report/component-35.pb +0 -1
  297. package/.scannerwork/scanner-report/component-37.pb +0 -1
  298. package/.scannerwork/scanner-report/component-38.pb +0 -1
  299. package/.scannerwork/scanner-report/component-4.pb +0 -1
  300. package/.scannerwork/scanner-report/component-57.pb +0 -1
  301. package/.scannerwork/scanner-report/component-59.pb +0 -1
  302. package/.scannerwork/scanner-report/component-60.pb +0 -1
  303. package/.scannerwork/scanner-report/component-65.pb +0 -1
  304. package/.scannerwork/scanner-report/component-66.pb +0 -1
  305. package/.scannerwork/scanner-report/component-67.pb +0 -1
  306. package/.scannerwork/scanner-report/coverages-33.pb +0 -0
  307. package/.scannerwork/scanner-report/coverages-35.pb +0 -0
  308. package/.scannerwork/scanner-report/coverages-38.pb +0 -0
  309. package/.scannerwork/scanner-report/coverages-4.pb +0 -0
  310. package/.scannerwork/scanner-report/coverages-57.pb +0 -0
  311. package/.scannerwork/scanner-report/coverages-59.pb +0 -0
  312. package/.scannerwork/scanner-report/coverages-60.pb +0 -0
  313. package/.scannerwork/scanner-report/coverages-61.pb +0 -0
  314. package/.scannerwork/scanner-report/coverages-66.pb +0 -0
  315. package/.scannerwork/scanner-report/duplications-54.pb +0 -2
  316. package/.scannerwork/scanner-report/duplications-57.pb +0 -2
  317. package/.scannerwork/scanner-report/duplications-65.pb +0 -0
  318. package/.scannerwork/scanner-report/duplications-66.pb +0 -0
  319. package/.scannerwork/scanner-report/measures-33.pb +0 -0
  320. package/.scannerwork/scanner-report/measures-35.pb +0 -0
  321. package/.scannerwork/scanner-report/measures-38.pb +0 -0
  322. package/.scannerwork/scanner-report/measures-4.pb +0 -0
  323. package/.scannerwork/scanner-report/measures-57.pb +0 -0
  324. package/.scannerwork/scanner-report/measures-59.pb +0 -0
  325. package/.scannerwork/scanner-report/measures-60.pb +0 -0
  326. package/.scannerwork/scanner-report/measures-66.pb +0 -0
  327. package/.scannerwork/scanner-report/measures-67.pb +0 -0
  328. package/.scannerwork/scanner-report/source-33.txt +0 -625
  329. package/.scannerwork/scanner-report/source-35.txt +0 -100
  330. package/.scannerwork/scanner-report/source-38.txt +0 -418
  331. package/.scannerwork/scanner-report/source-4.txt +0 -366
  332. package/.scannerwork/scanner-report/source-57.txt +0 -75
  333. package/.scannerwork/scanner-report/source-59.txt +0 -111
  334. package/.scannerwork/scanner-report/source-60.txt +0 -31
  335. package/.scannerwork/scanner-report/source-66.txt +0 -114
  336. package/.scannerwork/scanner-report/source-67.txt +0 -509
  337. package/.scannerwork/scanner-report/symbols-33.pb +0 -1254
  338. package/.scannerwork/scanner-report/symbols-35.pb +0 -69
  339. package/.scannerwork/scanner-report/symbols-38.pb +0 -610
  340. package/.scannerwork/scanner-report/symbols-4.pb +0 -494
  341. package/.scannerwork/scanner-report/symbols-57.pb +0 -42
  342. package/.scannerwork/scanner-report/symbols-59.pb +0 -59
  343. package/.scannerwork/scanner-report/symbols-60.pb +0 -14
  344. package/.scannerwork/scanner-report/symbols-61.pb +0 -42
  345. package/.scannerwork/scanner-report/symbols-66.pb +0 -28
  346. package/.scannerwork/scanner-report/syntax-highlightings-33.pb +0 -887
  347. package/.scannerwork/scanner-report/syntax-highlightings-35.pb +0 -105
  348. package/.scannerwork/scanner-report/syntax-highlightings-38.pb +0 -648
  349. package/.scannerwork/scanner-report/syntax-highlightings-4.pb +0 -630
  350. package/.scannerwork/scanner-report/syntax-highlightings-57.pb +0 -78
  351. package/.scannerwork/scanner-report/syntax-highlightings-59.pb +0 -133
  352. package/.scannerwork/scanner-report/syntax-highlightings-60.pb +0 -45
  353. package/.scannerwork/scanner-report/syntax-highlightings-66.pb +0 -138
  354. package/.scannerwork/scanner-report/syntax-highlightings-67.pb +0 -3747
  355. /package/.scannerwork/scanner-report/{coverages-65.pb → coverages-23.pb} +0 -0
  356. /package/.scannerwork/scanner-report/{coverages-32.pb → coverages-27.pb} +0 -0
  357. /package/.scannerwork/scanner-report/{coverages-3.pb → coverages-29.pb} +0 -0
  358. /package/.scannerwork/scanner-report/{coverages-31.pb → coverages-44.pb} +0 -0
  359. /package/.scannerwork/scanner-report/{coverages-34.pb → coverages-47.pb} +0 -0
  360. /package/.scannerwork/scanner-report/{duplications-31.pb → duplications-20.pb} +0 -0
  361. /package/.scannerwork/scanner-report/{duplications-32.pb → duplications-22.pb} +0 -0
  362. /package/.scannerwork/scanner-report/{duplications-33.pb → duplications-23.pb} +0 -0
  363. /package/.scannerwork/scanner-report/{duplications-34.pb → duplications-25.pb} +0 -0
  364. /package/.scannerwork/scanner-report/{duplications-35.pb → duplications-27.pb} +0 -0
  365. /package/.scannerwork/scanner-report/{duplications-38.pb → duplications-28.pb} +0 -0
  366. /package/.scannerwork/scanner-report/{duplications-3.pb → duplications-29.pb} +0 -0
  367. /package/.scannerwork/scanner-report/{duplications-4.pb → duplications-44.pb} +0 -0
  368. /package/.scannerwork/scanner-report/{duplications-59.pb → duplications-45.pb} +0 -0
  369. /package/.scannerwork/scanner-report/{duplications-60.pb → duplications-46.pb} +0 -0
  370. /package/.scannerwork/scanner-report/{duplications-61.pb → duplications-47.pb} +0 -0
  371. /package/.scannerwork/scanner-report/{issues-15.pb → issues-28.pb} +0 -0
  372. /package/.scannerwork/scanner-report/{issues-4.pb → issues-42.pb} +0 -0
  373. /package/.scannerwork/scanner-report/{issues-19.pb → issues-45.pb} +0 -0
  374. /package/.scannerwork/scanner-report/{issues-16.pb → issues-52.pb} +0 -0
  375. /package/.scannerwork/scanner-report/{measures-65.pb → measures-23.pb} +0 -0
  376. /package/.scannerwork/scanner-report/{measures-32.pb → measures-27.pb} +0 -0
  377. /package/.scannerwork/scanner-report/{measures-3.pb → measures-29.pb} +0 -0
  378. /package/.scannerwork/scanner-report/{measures-31.pb → measures-44.pb} +0 -0
  379. /package/.scannerwork/scanner-report/{measures-34.pb → measures-47.pb} +0 -0
  380. /package/.scannerwork/scanner-report/{measures-37.pb → measures-68.pb} +0 -0
  381. /package/.scannerwork/scanner-report/{source-65.txt → source-23.txt} +0 -0
  382. /package/.scannerwork/scanner-report/{source-32.txt → source-27.txt} +0 -0
  383. /package/.scannerwork/scanner-report/{source-3.txt → source-29.txt} +0 -0
  384. /package/.scannerwork/scanner-report/{source-31.txt → source-44.txt} +0 -0
  385. /package/.scannerwork/scanner-report/{source-34.txt → source-47.txt} +0 -0
  386. /package/.scannerwork/scanner-report/{symbols-65.pb → symbols-23.pb} +0 -0
  387. /package/.scannerwork/scanner-report/{symbols-32.pb → symbols-27.pb} +0 -0
  388. /package/.scannerwork/scanner-report/{symbols-3.pb → symbols-29.pb} +0 -0
  389. /package/.scannerwork/scanner-report/{symbols-31.pb → symbols-44.pb} +0 -0
  390. /package/.scannerwork/scanner-report/{symbols-34.pb → symbols-47.pb} +0 -0
  391. /package/.scannerwork/scanner-report/{syntax-highlightings-65.pb → syntax-highlightings-23.pb} +0 -0
  392. /package/.scannerwork/scanner-report/{syntax-highlightings-32.pb → syntax-highlightings-27.pb} +0 -0
  393. /package/.scannerwork/scanner-report/{syntax-highlightings-3.pb → syntax-highlightings-29.pb} +0 -0
  394. /package/.scannerwork/scanner-report/{syntax-highlightings-31.pb → syntax-highlightings-44.pb} +0 -0
  395. /package/.scannerwork/scanner-report/{syntax-highlightings-34.pb → syntax-highlightings-47.pb} +0 -0
@@ -1,366 +0,0 @@
1
- // Copyright © 2017, 2021 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 afterEach before after it */
16
- 'use strict';
17
-
18
- const assert = require('assert');
19
- const parser = require('../includes/parser.js');
20
-
21
- describe('#unit Default parameters', function() {
22
- let processEnvCopy;
23
- let processArgvCopy;
24
-
25
- before('Set process data for test', function() {
26
- // Copy env and argv so we can reset them after the tests
27
- processEnvCopy = JSON.parse(JSON.stringify(process.env));
28
- processArgvCopy = JSON.parse(JSON.stringify(process.argv));
29
-
30
- // setup environment variables
31
- process.env.COUCH_URL = 'http://user:pass@myurl.com';
32
- process.env.COUCH_DATABASE = 'mydb';
33
- process.env.COUCH_BUFFER_SIZE = '1000';
34
- process.env.COUCH_PARALLELISM = '20';
35
- process.env.COUCH_REQUEST_TIMEOUT = '20000';
36
- process.env.COUCH_LOG = 'my.log';
37
- process.env.COUCH_RESUME = 'true';
38
- process.env.COUCH_OUTPUT = 'myfile.txt';
39
- process.env.COUCH_MODE = 'shallow';
40
- process.env.CLOUDANT_IAM_API_KEY = 'ABC123-ZYX987_cba789-xyz321';
41
- process.env.COUCH_QUIET = 'true';
42
- });
43
-
44
- after('Reset process data', function() {
45
- process.env = processEnvCopy;
46
- process.argv = processArgvCopy;
47
- });
48
-
49
- afterEach(function() {
50
- delete require.cache[require.resolve('commander')];
51
- });
52
-
53
- describe('Backup command-line', function() {
54
- it('respects the COUCH_URL env variable if the --url backup command-line parameter is missing', function(done) {
55
- process.argv = ['node', 'test'];
56
- const program = parser.parseBackupArgs();
57
- assert.strictEqual(typeof program.url, 'string');
58
- assert.strictEqual(program.url, process.env.COUCH_URL);
59
- done();
60
- });
61
-
62
- it('respects the COUCH_DATABASE env variable if the --db backup command-line parameter is missing', function(done) {
63
- process.argv = ['node', 'test'];
64
- const program = parser.parseBackupArgs();
65
- assert.strictEqual(typeof program.db, 'string');
66
- assert.strictEqual(program.db, process.env.COUCH_DATABASE);
67
- done();
68
- });
69
-
70
- it('respects the COUCH_BUFFER_SIZE env variable if the --buffer-size backup command-line parameter is missing', function(done) {
71
- process.argv = ['node', 'test'];
72
- const program = parser.parseBackupArgs();
73
- assert.strictEqual(typeof program.bufferSize, 'number');
74
- assert.strictEqual(program.bufferSize, parseInt(process.env.COUCH_BUFFER_SIZE, 10));
75
- done();
76
- });
77
-
78
- it('respects the COUCH_PARALLELISM env variable if the --parallelism backup command-line parameter is missing', function(done) {
79
- process.argv = ['node', 'test'];
80
- const program = parser.parseBackupArgs();
81
- assert.strictEqual(typeof program.parallelism, 'number');
82
- assert.strictEqual(program.parallelism, parseInt(process.env.COUCH_PARALLELISM, 10));
83
- done();
84
- });
85
-
86
- it('respects the COUCH_REQUEST_TIMEOUT env variable if the --request-timeout backup command-line parameter is missing', function(done) {
87
- process.argv = ['node', 'test'];
88
- const program = parser.parseBackupArgs();
89
- assert.strictEqual(typeof program.requestTimeout, 'number');
90
- assert.strictEqual(program.requestTimeout, parseInt(process.env.COUCH_REQUEST_TIMEOUT, 10));
91
- done();
92
- });
93
-
94
- it('respects the CLOUDANT_IAM_API_KEY env variable if the --iam-api-key backup command-line parameter is missing', function(done) {
95
- process.argv = ['node', 'test'];
96
- const program = parser.parseBackupArgs();
97
- assert.strictEqual(typeof program.iamApiKey, 'string');
98
- assert.strictEqual(program.iamApiKey, process.env.CLOUDANT_IAM_API_KEY);
99
- done();
100
- });
101
-
102
- it('respects the COUCH_LOG env variable if the --log backup command-line parameter is missing', function(done) {
103
- process.argv = ['node', 'test'];
104
- const program = parser.parseBackupArgs();
105
- assert.strictEqual(typeof program.log, 'string');
106
- assert.strictEqual(program.log, process.env.COUCH_LOG);
107
- done();
108
- });
109
-
110
- it('respects the COUCH_RESUME env variable if the --resume backup command-line parameter is missing', function(done) {
111
- process.argv = ['node', 'test'];
112
- const program = parser.parseBackupArgs();
113
- assert.strictEqual(typeof program.resume, 'boolean');
114
- assert.strictEqual(program.resume, true);
115
- done();
116
- });
117
-
118
- it('respects the COUCH_OUTPUT env variable if the --output backup command-line parameter is missing', function(done) {
119
- process.argv = ['node', 'test'];
120
- const program = parser.parseBackupArgs();
121
- assert.strictEqual(typeof program.output, 'string');
122
- assert.strictEqual(program.output, process.env.COUCH_OUTPUT);
123
- done();
124
- });
125
-
126
- it('respects the COUCH_MODE env variable if the --mode backup command-line parameter is missing', function(done) {
127
- process.argv = ['node', 'test'];
128
- const program = parser.parseBackupArgs();
129
- assert.strictEqual(typeof program.mode, 'string');
130
- assert.strictEqual(program.mode, process.env.COUCH_MODE);
131
- done();
132
- });
133
-
134
- it('respects the COUCH_QUIET env variable if the --quiet backup command-line parameter is missing', function(done) {
135
- process.argv = ['node', 'test'];
136
- const program = parser.parseBackupArgs();
137
- assert.strictEqual(typeof program.quiet, 'boolean');
138
- assert.strictEqual(program.quiet, true);
139
- done();
140
- });
141
-
142
- it('respects the backup --url command-line parameter', function(done) {
143
- const url = 'http://user:pass@myurl2.com';
144
- process.argv = ['node', 'test', '--url', url];
145
- const program = parser.parseBackupArgs();
146
- assert.strictEqual(typeof program.url, 'string');
147
- assert.strictEqual(program.url, url);
148
- done();
149
- });
150
-
151
- it('respects the backup --db command-line parameter', function(done) {
152
- const db = 'mydb2';
153
- process.argv = ['node', 'test', '--db', db];
154
- const program = parser.parseBackupArgs();
155
- assert.strictEqual(typeof program.db, 'string');
156
- assert.strictEqual(program.db, db);
157
- done();
158
- });
159
-
160
- it('respects the backup --buffer-size command-line parameter', function(done) {
161
- const bufferSize = 500;
162
- process.argv = ['node', 'test', '--buffer-size', bufferSize];
163
- const program = parser.parseBackupArgs();
164
- assert.strictEqual(typeof program.bufferSize, 'number');
165
- assert.strictEqual(program.bufferSize, bufferSize);
166
- done();
167
- });
168
-
169
- it('respects the backup --parallelism command-line parameter', function(done) {
170
- const parallelism = 10;
171
- process.argv = ['node', 'test', '--parallelism', parallelism];
172
- const program = parser.parseBackupArgs();
173
- assert.strictEqual(typeof program.parallelism, 'number');
174
- assert.strictEqual(program.parallelism, parallelism);
175
- done();
176
- });
177
-
178
- it('respects the backup --request-timeout command-line parameter', function(done) {
179
- const requestTimeout = 10000;
180
- process.argv = ['node', 'test', '--request-timeout', requestTimeout];
181
- const program = parser.parseBackupArgs();
182
- assert.strictEqual(typeof program.requestTimeout, 'number');
183
- assert.strictEqual(program.requestTimeout, requestTimeout);
184
- done();
185
- });
186
-
187
- it('respects the backup --iam-api-key command-line parameter', function(done) {
188
- const key = '123abc-789zyx_CBA987-XYZ321';
189
- process.argv = ['node', 'test', '--iam-api-key', key];
190
- const program = parser.parseBackupArgs();
191
- assert.strictEqual(typeof program.iamApiKey, 'string');
192
- assert.strictEqual(program.iamApiKey, key);
193
- done();
194
- });
195
-
196
- it('respects the backup --log command-line parameter', function(done) {
197
- const filename = 'my2.log';
198
- process.argv = ['node', 'test', '--log', filename];
199
- const program = parser.parseBackupArgs();
200
- assert.strictEqual(typeof program.log, 'string');
201
- assert.strictEqual(program.log, filename);
202
- done();
203
- });
204
-
205
- it('respects the backup --resume command-line parameter', function(done) {
206
- process.argv = ['node', 'test', '--resume'];
207
- const program = parser.parseBackupArgs();
208
- assert.strictEqual(typeof program.resume, 'boolean');
209
- assert.strictEqual(program.resume, true);
210
- done();
211
- });
212
-
213
- it('respects the backup --output command-line parameter', function(done) {
214
- const filename = 'myfile2.txt';
215
- process.argv = ['node', 'test', '--output', filename];
216
- const program = parser.parseBackupArgs();
217
- assert.strictEqual(typeof program.output, 'string');
218
- assert.strictEqual(program.output, filename);
219
- done();
220
- });
221
-
222
- it('respects the backup --mode full command-line parameter', function(done) {
223
- process.argv = ['node', 'test', '--mode', 'full'];
224
- const program = parser.parseBackupArgs();
225
- assert.strictEqual(typeof program.mode, 'string');
226
- assert.strictEqual(program.mode, 'full');
227
- done();
228
- });
229
-
230
- it('respects the backup --mode shallow command-line parameter', function(done) {
231
- process.argv = ['node', 'test', '--mode', 'shallow'];
232
- const program = parser.parseBackupArgs();
233
- assert.strictEqual(typeof program.mode, 'string');
234
- assert.strictEqual(program.mode, 'shallow');
235
- done();
236
- });
237
-
238
- it('respects the backup --quiet command-line parameter', function(done) {
239
- process.argv = ['node', 'test', '--quiet'];
240
- const program = parser.parseBackupArgs();
241
- assert.strictEqual(typeof program.quiet, 'boolean');
242
- assert.strictEqual(program.quiet, true);
243
- done();
244
- });
245
- });
246
-
247
- describe('Restore command-line', function() {
248
- it('respects the COUCH_URL env variable if the --url restore command-line parameter is missing', function(done) {
249
- process.argv = ['node', 'test'];
250
- const program = parser.parseRestoreArgs();
251
- assert.strictEqual(typeof program.url, 'string');
252
- assert.strictEqual(program.url, process.env.COUCH_URL);
253
- done();
254
- });
255
-
256
- it('respects the COUCH_DATABASE env variable if the --db restore command-line parameter is missing', function(done) {
257
- process.argv = ['node', 'test'];
258
- const program = parser.parseRestoreArgs();
259
- assert.strictEqual(typeof program.db, 'string');
260
- assert.strictEqual(program.db, process.env.COUCH_DATABASE);
261
- done();
262
- });
263
-
264
- it('respects the COUCH_BUFFER_SIZE env variable if the --buffer-size restore command-line parameter is missing', function(done) {
265
- process.argv = ['node', 'test'];
266
- const program = parser.parseRestoreArgs();
267
- assert.strictEqual(typeof program.bufferSize, 'number');
268
- assert.strictEqual(program.bufferSize, parseInt(process.env.COUCH_BUFFER_SIZE, 10));
269
- done();
270
- });
271
-
272
- it('respects the COUCH_PARALLELISM env variable if the --parallelism restore command-line parameter is missing', function(done) {
273
- process.argv = ['node', 'test'];
274
- const program = parser.parseRestoreArgs();
275
- assert.strictEqual(typeof program.parallelism, 'number');
276
- assert.strictEqual(program.parallelism, parseInt(process.env.COUCH_PARALLELISM, 10));
277
- done();
278
- });
279
-
280
- it('respects the COUCH_REQUEST_TIMEOUT env variable if the --request-timeout restore command-line parameter is missing', function(done) {
281
- process.argv = ['node', 'test'];
282
- const program = parser.parseRestoreArgs();
283
- assert.strictEqual(typeof program.requestTimeout, 'number');
284
- assert.strictEqual(program.requestTimeout, parseInt(process.env.COUCH_REQUEST_TIMEOUT, 10));
285
- done();
286
- });
287
-
288
- it('respects the CLOUDANT_IAM_API_KEY env variable if the --iam-api-key restore command-line parameter is missing', function(done) {
289
- process.argv = ['node', 'test'];
290
- const program = parser.parseRestoreArgs();
291
- assert.strictEqual(typeof program.iamApiKey, 'string');
292
- assert.strictEqual(program.iamApiKey, process.env.CLOUDANT_IAM_API_KEY);
293
- done();
294
- });
295
-
296
- it('respects the COUCH_QUIET env variable if the --quiet restorer command-line parameter is missing', function(done) {
297
- process.argv = ['node', 'test'];
298
- const program = parser.parseBackupArgs();
299
- assert.strictEqual(typeof program.quiet, 'boolean');
300
- assert.strictEqual(program.quiet, true);
301
- done();
302
- });
303
-
304
- it('respects the restore --url command-line parameter', function(done) {
305
- const url = 'https://a:b@myurl3.com';
306
- process.argv = ['node', 'test', '--url', url];
307
- const program = parser.parseRestoreArgs();
308
- assert.strictEqual(typeof program.url, 'string');
309
- assert.strictEqual(program.url, url);
310
- done();
311
- });
312
-
313
- it('respects the restore --db command-line parameter', function(done) {
314
- const db = 'mydb3';
315
- process.argv = ['node', 'test', '--db', db];
316
- const program = parser.parseRestoreArgs();
317
- assert.strictEqual(typeof program.db, 'string');
318
- assert.strictEqual(program.db, db);
319
- done();
320
- });
321
-
322
- it('respects the restore --buffer-size command-line parameter', function(done) {
323
- const bufferSize = 250;
324
- process.argv = ['node', 'test', '--buffer-size', bufferSize];
325
- const program = parser.parseRestoreArgs();
326
- assert.strictEqual(typeof program.bufferSize, 'number');
327
- assert.strictEqual(program.bufferSize, bufferSize);
328
- done();
329
- });
330
-
331
- it('respects the restore --parallelism command-line parameter', function(done) {
332
- const parallelism = 5;
333
- process.argv = ['node', 'test', '--parallelism', parallelism];
334
- const program = parser.parseRestoreArgs();
335
- assert.strictEqual(typeof program.parallelism, 'number');
336
- assert.strictEqual(program.parallelism, parallelism);
337
- done();
338
- });
339
-
340
- it('respects the restore --request-timeout command-line parameter', function(done) {
341
- const requestTimeout = 10000;
342
- process.argv = ['node', 'test', '--request-timeout', requestTimeout];
343
- const program = parser.parseRestoreArgs();
344
- assert.strictEqual(typeof program.requestTimeout, 'number');
345
- assert.strictEqual(program.requestTimeout, requestTimeout);
346
- done();
347
- });
348
-
349
- it('respects the restore --iam-api-key command-line parameter', function(done) {
350
- const key = '123abc-789zyx_CBA987-XYZ321';
351
- process.argv = ['node', 'test', '--iam-api-key', key];
352
- const program = parser.parseRestoreArgs();
353
- assert.strictEqual(typeof program.iamApiKey, 'string');
354
- assert.strictEqual(program.iamApiKey, key);
355
- done();
356
- });
357
-
358
- it('respects the restore --quiet command-line parameter', function(done) {
359
- process.argv = ['node', 'test', '--quiet'];
360
- const program = parser.parseRestoreArgs();
361
- assert.strictEqual(typeof program.quiet, 'boolean');
362
- assert.strictEqual(program.quiet, true);
363
- done();
364
- });
365
- });
366
- });
@@ -1,75 +0,0 @@
1
- // Copyright © 2017 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
- 'use strict';
15
-
16
- const fs = require('fs');
17
- const stream = require('stream');
18
- const liner = require('./liner.js');
19
-
20
- const onLine = function(onCommand, batches) {
21
- const change = new stream.Transform({ objectMode: true });
22
- change._transform = function(line, encoding, done) {
23
- if (line && line[0] === ':') {
24
- const obj = {
25
- command: null,
26
- batch: null,
27
- docs: []
28
- };
29
-
30
- let matches;
31
-
32
- // extract command
33
- matches = line.match(/^:([a-z_]+) ?/);
34
- if (matches) {
35
- obj.command = matches[1];
36
- }
37
-
38
- // extract batch
39
- matches = line.match(/ batch([0-9]+)/);
40
- if (matches) {
41
- obj.batch = parseInt(matches[1]);
42
- }
43
-
44
- // if this is one we want
45
- if (obj.command === 't' && batches.indexOf(obj.batch) > -1) {
46
- const json = line.replace(/^.* batch[0-9]+ /, '').trim();
47
- obj.docs = JSON.parse(json);
48
- onCommand(obj);
49
- }
50
- }
51
- done();
52
- };
53
- return change;
54
- };
55
-
56
- module.exports = function(log, batches, callback) {
57
- // our sense of state
58
- const retval = { };
59
-
60
- // called with each line from the log file
61
- const onCommand = function(obj) {
62
- retval[obj.batch] = obj;
63
- };
64
-
65
- // stream through the previous log file
66
- fs.createReadStream(log)
67
- .pipe(liner())
68
- .pipe(onLine(onCommand, batches))
69
- .on('error', function(err) {
70
- callback(err);
71
- })
72
- .on('finish', function() {
73
- callback(null, retval);
74
- });
75
- };
@@ -1,111 +0,0 @@
1
- // Copyright © 2017, 2022 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
- 'use strict';
15
-
16
- const fs = require('fs');
17
- const liner = require('./liner.js');
18
- const change = require('./change.js');
19
- const error = require('./error.js');
20
- const debug = require('debug')('couchbackup:spoolchanges');
21
-
22
- /**
23
- * Write log file for all changes from a database, ready for downloading
24
- * in batches.
25
- *
26
- * @param {string} dbUrl - URL of database
27
- * @param {string} log - path to log file to use
28
- * @param {number} bufferSize - the number of changes per batch/log line
29
- * @param {function(err)} callback - a callback to run on completion
30
- */
31
- module.exports = function(db, log, bufferSize, ee, callback) {
32
- // list of document ids to process
33
- const buffer = [];
34
- let batch = 0;
35
- let lastSeq = null;
36
- const logStream = fs.createWriteStream(log);
37
- let pending = 0;
38
- // The number of changes to fetch per request
39
- const limit = 100000;
40
-
41
- // send documents ids to the queue in batches of bufferSize + the last batch
42
- const processBuffer = function(lastOne) {
43
- if (buffer.length >= bufferSize || (lastOne && buffer.length > 0)) {
44
- debug('writing', buffer.length, 'changes to the backup file');
45
- const b = { docs: buffer.splice(0, bufferSize), batch: batch };
46
- logStream.write(':t batch' + batch + ' ' + JSON.stringify(b.docs) + '\n');
47
- ee.emit('changes', batch);
48
- batch++;
49
- }
50
- };
51
-
52
- // called once per received change
53
- const onChange = function(c) {
54
- if (c) {
55
- if (c.error) {
56
- ee.emit('error', new error.BackupError('InvalidChange', `Received invalid change: ${c}`));
57
- } else if (c.changes) {
58
- const obj = { id: c.id };
59
- buffer.push(obj);
60
- processBuffer(false);
61
- } else if (c.last_seq) {
62
- lastSeq = c.last_seq;
63
- pending = c.pending;
64
- }
65
- }
66
- };
67
-
68
- function getChanges(since = 0) {
69
- debug('making changes request since ' + since);
70
- return db.service.postChangesAsStream({ db: db.db, since: since, limit: limit, seqInterval: limit })
71
- .then(response => {
72
- response.result.pipe(liner())
73
- .on('error', function(err) {
74
- logStream.end();
75
- callback(err);
76
- })
77
- .pipe(change(onChange))
78
- .on('error', function(err) {
79
- logStream.end();
80
- callback(err);
81
- })
82
- .on('finish', function() {
83
- processBuffer(true);
84
- if (!lastSeq) {
85
- logStream.end();
86
- debug('changes request terminated before last_seq was sent');
87
- callback(new error.BackupError('SpoolChangesError', 'Changes request terminated before last_seq was sent'));
88
- } else {
89
- debug(`changes request completed with last_seq: ${lastSeq} and ${pending} changes pending.`);
90
- if (pending > 0) {
91
- // Return the next promise
92
- return getChanges(lastSeq);
93
- } else {
94
- debug('finished streaming database changes');
95
- logStream.end(':changes_complete ' + lastSeq + '\n', 'utf8', callback);
96
- }
97
- }
98
- });
99
- })
100
- .catch(err => {
101
- logStream.end();
102
- if (err.status && err.status >= 400) {
103
- callback(error.convertResponseError(err));
104
- } else if (err.name !== 'SpoolChangesError') {
105
- callback(new error.BackupError('SpoolChangesError', `Failed changes request - ${err.message}`));
106
- }
107
- });
108
- }
109
-
110
- getChanges();
111
- };
@@ -1,31 +0,0 @@
1
- // Copyright © 2017, 2018 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
- 'use strict';
15
-
16
- module.exports = function(db, options, readstream, ee, callback) {
17
- const liner = require('../includes/liner.js')();
18
- const writer = require('../includes/writer.js')(db, options.bufferSize, options.parallelism, ee);
19
-
20
- // pipe the input to the output, via transformation functions
21
- readstream
22
- .pipe(liner) // transform the input stream into per-line
23
- .on('error', function(err) {
24
- // Forward the error to the writer event emitter where we already have
25
- // listeners on for handling errors
26
- writer.emit('error', err);
27
- })
28
- .pipe(writer); // transform the data
29
-
30
- callback(null, writer);
31
- };