@oneblink/release-cli 1.2.0-beta.2 → 1.2.0-beta.3

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 (429) hide show
  1. package/node_modules/@yarnpkg/lockfile/README.md +22 -0
  2. package/node_modules/@yarnpkg/lockfile/index.js +10273 -0
  3. package/node_modules/@yarnpkg/lockfile/package.json +19 -0
  4. package/node_modules/ansi-styles/index.js +165 -0
  5. package/node_modules/ansi-styles/license +9 -0
  6. package/node_modules/ansi-styles/package.json +60 -0
  7. package/node_modules/ansi-styles/readme.md +147 -0
  8. package/node_modules/balanced-match/.github/FUNDING.yml +2 -0
  9. package/node_modules/balanced-match/LICENSE.md +21 -0
  10. package/node_modules/balanced-match/README.md +97 -0
  11. package/node_modules/balanced-match/index.js +62 -0
  12. package/node_modules/balanced-match/package.json +52 -0
  13. package/node_modules/brace-expansion/LICENSE +21 -0
  14. package/node_modules/brace-expansion/README.md +129 -0
  15. package/node_modules/brace-expansion/index.js +201 -0
  16. package/node_modules/brace-expansion/package.json +51 -0
  17. package/node_modules/braces/CHANGELOG.md +184 -0
  18. package/node_modules/braces/LICENSE +21 -0
  19. package/node_modules/braces/README.md +593 -0
  20. package/node_modules/braces/index.js +170 -0
  21. package/node_modules/braces/lib/compile.js +57 -0
  22. package/node_modules/braces/lib/constants.js +57 -0
  23. package/node_modules/braces/lib/expand.js +113 -0
  24. package/node_modules/braces/lib/parse.js +333 -0
  25. package/node_modules/braces/lib/stringify.js +32 -0
  26. package/node_modules/braces/lib/utils.js +112 -0
  27. package/node_modules/braces/package.json +81 -0
  28. package/node_modules/chalk/index.js +228 -0
  29. package/node_modules/chalk/index.js.flow +93 -0
  30. package/node_modules/chalk/license +9 -0
  31. package/node_modules/chalk/package.json +75 -0
  32. package/node_modules/chalk/readme.md +314 -0
  33. package/node_modules/chalk/templates.js +128 -0
  34. package/node_modules/chalk/types/index.d.ts +97 -0
  35. package/node_modules/changelog-parser/.DS_Store +0 -0
  36. package/node_modules/changelog-parser/.travis.yml +7 -0
  37. package/node_modules/changelog-parser/CHANGELOG.md +128 -0
  38. package/node_modules/changelog-parser/CONTRIBUTING.md +55 -0
  39. package/node_modules/changelog-parser/LICENSE.md +15 -0
  40. package/node_modules/changelog-parser/README.md +247 -0
  41. package/node_modules/changelog-parser/bin/cli.js +19 -0
  42. package/node_modules/changelog-parser/index.js +201 -0
  43. package/node_modules/changelog-parser/package.json +54 -0
  44. package/node_modules/changelog-parser/test/fixtures/CHANGELOG.md +44 -0
  45. package/node_modules/changelog-parser/test/fixtures/expected.js +113 -0
  46. package/node_modules/changelog-parser/test/fixtures/remove-markdown-expected.js +113 -0
  47. package/node_modules/changelog-parser/test/index.js +105 -0
  48. package/node_modules/ci-info/CHANGELOG.md +78 -0
  49. package/node_modules/ci-info/LICENSE +21 -0
  50. package/node_modules/ci-info/README.md +108 -0
  51. package/node_modules/ci-info/index.js +66 -0
  52. package/node_modules/ci-info/package.json +40 -0
  53. package/node_modules/ci-info/vendors.json +153 -0
  54. package/node_modules/color-convert/CHANGELOG.md +54 -0
  55. package/node_modules/color-convert/LICENSE +21 -0
  56. package/node_modules/color-convert/README.md +68 -0
  57. package/node_modules/color-convert/conversions.js +868 -0
  58. package/node_modules/color-convert/index.js +78 -0
  59. package/node_modules/color-convert/package.json +50 -0
  60. package/node_modules/color-convert/route.js +97 -0
  61. package/node_modules/color-name/.eslintrc.json +43 -0
  62. package/node_modules/color-name/.npmignore +107 -0
  63. package/node_modules/color-name/LICENSE +8 -0
  64. package/node_modules/color-name/README.md +11 -0
  65. package/node_modules/color-name/index.js +152 -0
  66. package/node_modules/color-name/package.json +29 -0
  67. package/node_modules/color-name/test.js +7 -0
  68. package/node_modules/concat-map/.travis.yml +4 -0
  69. package/node_modules/concat-map/LICENSE +18 -0
  70. package/node_modules/concat-map/README.markdown +62 -0
  71. package/node_modules/concat-map/example/map.js +6 -0
  72. package/node_modules/concat-map/index.js +13 -0
  73. package/node_modules/concat-map/package.json +47 -0
  74. package/node_modules/concat-map/test/map.js +39 -0
  75. package/node_modules/escape-string-regexp/index.js +11 -0
  76. package/node_modules/escape-string-regexp/license +21 -0
  77. package/node_modules/escape-string-regexp/package.json +45 -0
  78. package/node_modules/escape-string-regexp/readme.md +27 -0
  79. package/node_modules/fill-range/LICENSE +21 -0
  80. package/node_modules/fill-range/README.md +237 -0
  81. package/node_modules/fill-range/index.js +249 -0
  82. package/node_modules/fill-range/package.json +73 -0
  83. package/node_modules/find-yarn-workspace-root/CHANGELOG.md +53 -0
  84. package/node_modules/find-yarn-workspace-root/LICENSE +201 -0
  85. package/node_modules/find-yarn-workspace-root/README.md +56 -0
  86. package/node_modules/find-yarn-workspace-root/index.d.ts +3 -0
  87. package/node_modules/find-yarn-workspace-root/index.js +53 -0
  88. package/node_modules/find-yarn-workspace-root/package.json +38 -0
  89. package/node_modules/fs-extra/CHANGELOG.md +842 -0
  90. package/node_modules/fs-extra/LICENSE +15 -0
  91. package/node_modules/fs-extra/README.md +261 -0
  92. package/node_modules/fs-extra/lib/copy/copy.js +246 -0
  93. package/node_modules/fs-extra/lib/copy/index.js +6 -0
  94. package/node_modules/fs-extra/lib/copy-sync/copy-sync.js +193 -0
  95. package/node_modules/fs-extra/lib/copy-sync/index.js +5 -0
  96. package/node_modules/fs-extra/lib/empty/index.js +48 -0
  97. package/node_modules/fs-extra/lib/ensure/file.js +49 -0
  98. package/node_modules/fs-extra/lib/ensure/index.js +23 -0
  99. package/node_modules/fs-extra/lib/ensure/link.js +61 -0
  100. package/node_modules/fs-extra/lib/ensure/symlink-paths.js +99 -0
  101. package/node_modules/fs-extra/lib/ensure/symlink-type.js +31 -0
  102. package/node_modules/fs-extra/lib/ensure/symlink.js +63 -0
  103. package/node_modules/fs-extra/lib/fs/index.js +104 -0
  104. package/node_modules/fs-extra/lib/index.js +28 -0
  105. package/node_modules/fs-extra/lib/json/index.js +16 -0
  106. package/node_modules/fs-extra/lib/json/jsonfile.js +12 -0
  107. package/node_modules/fs-extra/lib/json/output-json-sync.js +18 -0
  108. package/node_modules/fs-extra/lib/json/output-json.js +27 -0
  109. package/node_modules/fs-extra/lib/mkdirs/index.js +14 -0
  110. package/node_modules/fs-extra/lib/mkdirs/mkdirs-sync.js +54 -0
  111. package/node_modules/fs-extra/lib/mkdirs/mkdirs.js +63 -0
  112. package/node_modules/fs-extra/lib/mkdirs/win32.js +25 -0
  113. package/node_modules/fs-extra/lib/move/index.js +82 -0
  114. package/node_modules/fs-extra/lib/move-sync/index.js +117 -0
  115. package/node_modules/fs-extra/lib/output/index.js +40 -0
  116. package/node_modules/fs-extra/lib/path-exists/index.js +12 -0
  117. package/node_modules/fs-extra/lib/remove/index.js +9 -0
  118. package/node_modules/fs-extra/lib/remove/rimraf.js +314 -0
  119. package/node_modules/fs-extra/lib/util/buffer.js +12 -0
  120. package/node_modules/fs-extra/lib/util/utimes.js +79 -0
  121. package/node_modules/fs-extra/package.json +72 -0
  122. package/node_modules/fs.realpath/LICENSE +43 -0
  123. package/node_modules/fs.realpath/README.md +33 -0
  124. package/node_modules/fs.realpath/index.js +66 -0
  125. package/node_modules/fs.realpath/old.js +303 -0
  126. package/node_modules/fs.realpath/package.json +30 -0
  127. package/node_modules/glob/LICENSE +21 -0
  128. package/node_modules/glob/README.md +375 -0
  129. package/node_modules/glob/changelog.md +67 -0
  130. package/node_modules/glob/common.js +240 -0
  131. package/node_modules/glob/glob.js +790 -0
  132. package/node_modules/glob/package.json +50 -0
  133. package/node_modules/glob/sync.js +486 -0
  134. package/node_modules/graceful-fs/LICENSE +15 -0
  135. package/node_modules/graceful-fs/README.md +133 -0
  136. package/node_modules/graceful-fs/clone.js +23 -0
  137. package/node_modules/graceful-fs/graceful-fs.js +373 -0
  138. package/node_modules/graceful-fs/legacy-streams.js +118 -0
  139. package/node_modules/graceful-fs/package.json +54 -0
  140. package/node_modules/graceful-fs/polyfills.js +346 -0
  141. package/node_modules/has-flag/index.js +8 -0
  142. package/node_modules/has-flag/license +9 -0
  143. package/node_modules/has-flag/package.json +48 -0
  144. package/node_modules/has-flag/readme.md +70 -0
  145. package/node_modules/inflight/LICENSE +15 -0
  146. package/node_modules/inflight/README.md +37 -0
  147. package/node_modules/inflight/inflight.js +54 -0
  148. package/node_modules/inflight/package.json +33 -0
  149. package/node_modules/inherits/LICENSE +16 -0
  150. package/node_modules/inherits/README.md +42 -0
  151. package/node_modules/inherits/inherits.js +9 -0
  152. package/node_modules/inherits/inherits_browser.js +27 -0
  153. package/node_modules/inherits/package.json +33 -0
  154. package/node_modules/is-ci/CHANGELOG.md +14 -0
  155. package/node_modules/is-ci/LICENSE +21 -0
  156. package/node_modules/is-ci/README.md +50 -0
  157. package/node_modules/is-ci/bin.js +4 -0
  158. package/node_modules/is-ci/index.js +3 -0
  159. package/node_modules/is-ci/package.json +42 -0
  160. package/node_modules/is-docker/cli.js +5 -0
  161. package/node_modules/is-docker/index.d.ts +15 -0
  162. package/node_modules/is-docker/index.js +29 -0
  163. package/node_modules/is-docker/license +9 -0
  164. package/node_modules/is-docker/package.json +46 -0
  165. package/node_modules/is-docker/readme.md +27 -0
  166. package/node_modules/is-number/LICENSE +21 -0
  167. package/node_modules/is-number/README.md +187 -0
  168. package/node_modules/is-number/index.js +18 -0
  169. package/node_modules/is-number/package.json +86 -0
  170. package/node_modules/is-wsl/index.d.ts +15 -0
  171. package/node_modules/is-wsl/index.js +31 -0
  172. package/node_modules/is-wsl/license +9 -0
  173. package/node_modules/is-wsl/package.json +49 -0
  174. package/node_modules/is-wsl/readme.md +36 -0
  175. package/node_modules/isexe/.npmignore +2 -0
  176. package/node_modules/isexe/LICENSE +15 -0
  177. package/node_modules/isexe/README.md +51 -0
  178. package/node_modules/isexe/index.js +57 -0
  179. package/node_modules/isexe/mode.js +41 -0
  180. package/node_modules/isexe/package.json +35 -0
  181. package/node_modules/isexe/test/basic.js +221 -0
  182. package/node_modules/isexe/windows.js +42 -0
  183. package/node_modules/jsonfile/CHANGELOG.md +145 -0
  184. package/node_modules/jsonfile/LICENSE +15 -0
  185. package/node_modules/jsonfile/README.md +168 -0
  186. package/node_modules/jsonfile/index.js +134 -0
  187. package/node_modules/jsonfile/package.json +41 -0
  188. package/node_modules/klaw-sync/CHANGELOG.md +73 -0
  189. package/node_modules/klaw-sync/LICENSE +20 -0
  190. package/node_modules/klaw-sync/README.md +164 -0
  191. package/node_modules/klaw-sync/klaw-sync.js +29 -0
  192. package/node_modules/klaw-sync/package.json +51 -0
  193. package/node_modules/line-reader/LICENSE +20 -0
  194. package/node_modules/line-reader/README.md +75 -0
  195. package/node_modules/line-reader/lib/line_reader.js +174 -0
  196. package/node_modules/line-reader/package.json +18 -0
  197. package/node_modules/line-reader/test/data/empty_file.txt +0 -0
  198. package/node_modules/line-reader/test/data/multi_separator_file.txt +2 -0
  199. package/node_modules/line-reader/test/data/multibyte_file.txt +2 -0
  200. package/node_modules/line-reader/test/data/normal_file.txt +6 -0
  201. package/node_modules/line-reader/test/data/one_line_file.txt +1 -0
  202. package/node_modules/line-reader/test/data/separator_file.txt +2 -0
  203. package/node_modules/line-reader/test/data/three_line_file.txt +3 -0
  204. package/node_modules/line-reader/test/line_reader.js +222 -0
  205. package/node_modules/lru-cache/LICENSE +15 -0
  206. package/node_modules/lru-cache/README.md +166 -0
  207. package/node_modules/lru-cache/index.js +334 -0
  208. package/node_modules/lru-cache/package.json +38 -0
  209. package/node_modules/micromatch/CHANGELOG.md +109 -0
  210. package/node_modules/micromatch/LICENSE +21 -0
  211. package/node_modules/micromatch/README.md +1008 -0
  212. package/node_modules/micromatch/index.js +467 -0
  213. package/node_modules/micromatch/package.json +123 -0
  214. package/node_modules/minimatch/LICENSE +15 -0
  215. package/node_modules/minimatch/README.md +209 -0
  216. package/node_modules/minimatch/minimatch.js +923 -0
  217. package/node_modules/minimatch/package.json +34 -0
  218. package/node_modules/minimist/.travis.yml +8 -0
  219. package/node_modules/minimist/LICENSE +18 -0
  220. package/node_modules/minimist/example/parse.js +2 -0
  221. package/node_modules/minimist/index.js +245 -0
  222. package/node_modules/minimist/package.json +49 -0
  223. package/node_modules/minimist/readme.markdown +95 -0
  224. package/node_modules/minimist/test/all_bool.js +32 -0
  225. package/node_modules/minimist/test/bool.js +178 -0
  226. package/node_modules/minimist/test/dash.js +31 -0
  227. package/node_modules/minimist/test/default_bool.js +35 -0
  228. package/node_modules/minimist/test/dotted.js +22 -0
  229. package/node_modules/minimist/test/kv_short.js +16 -0
  230. package/node_modules/minimist/test/long.js +31 -0
  231. package/node_modules/minimist/test/num.js +36 -0
  232. package/node_modules/minimist/test/parse.js +197 -0
  233. package/node_modules/minimist/test/parse_modified.js +9 -0
  234. package/node_modules/minimist/test/proto.js +44 -0
  235. package/node_modules/minimist/test/short.js +67 -0
  236. package/node_modules/minimist/test/stop_early.js +15 -0
  237. package/node_modules/minimist/test/unknown.js +102 -0
  238. package/node_modules/minimist/test/whitespace.js +8 -0
  239. package/node_modules/nice-try/CHANGELOG.md +21 -0
  240. package/node_modules/nice-try/LICENSE +21 -0
  241. package/node_modules/nice-try/README.md +32 -0
  242. package/node_modules/nice-try/package.json +37 -0
  243. package/node_modules/nice-try/src/index.js +12 -0
  244. package/node_modules/once/LICENSE +15 -0
  245. package/node_modules/once/README.md +79 -0
  246. package/node_modules/once/once.js +42 -0
  247. package/node_modules/once/package.json +37 -0
  248. package/node_modules/open/index.d.ts +88 -0
  249. package/node_modules/open/index.js +195 -0
  250. package/node_modules/open/license +9 -0
  251. package/node_modules/open/package.json +64 -0
  252. package/node_modules/open/readme.md +154 -0
  253. package/node_modules/open/xdg-open +1066 -0
  254. package/node_modules/os-tmpdir/index.js +25 -0
  255. package/node_modules/os-tmpdir/license +21 -0
  256. package/node_modules/os-tmpdir/package.json +45 -0
  257. package/node_modules/os-tmpdir/readme.md +32 -0
  258. package/node_modules/patch-package/CHANGELOG.md +389 -0
  259. package/node_modules/patch-package/LICENSE +19 -0
  260. package/node_modules/patch-package/README.md +269 -0
  261. package/node_modules/patch-package/dist/PackageDetails.js +102 -0
  262. package/node_modules/patch-package/dist/PackageDetails.test.js +228 -0
  263. package/node_modules/patch-package/dist/applyPatches.js +261 -0
  264. package/node_modules/patch-package/dist/assertNever.js +8 -0
  265. package/node_modules/patch-package/dist/createIssue.js +83 -0
  266. package/node_modules/patch-package/dist/detectPackageManager.js +64 -0
  267. package/node_modules/patch-package/dist/filterFiles.js +17 -0
  268. package/node_modules/patch-package/dist/getAppRootPath.js +22 -0
  269. package/node_modules/patch-package/dist/getPackageResolution.js +85 -0
  270. package/node_modules/patch-package/dist/getPackageVersion.js +9 -0
  271. package/node_modules/patch-package/dist/index.js +161 -0
  272. package/node_modules/patch-package/dist/makePatch.js +231 -0
  273. package/node_modules/patch-package/dist/makeRegExp.js +28 -0
  274. package/node_modules/patch-package/dist/packageIsDevDependency.js +15 -0
  275. package/node_modules/patch-package/dist/packageIsDevDependency.test.js +32 -0
  276. package/node_modules/patch-package/dist/patch/apply.js +197 -0
  277. package/node_modules/patch-package/dist/patch/parse.js +330 -0
  278. package/node_modules/patch-package/dist/patch/read.js +49 -0
  279. package/node_modules/patch-package/dist/patch/reverse.js +96 -0
  280. package/node_modules/patch-package/dist/patchFs.js +20 -0
  281. package/node_modules/patch-package/dist/path.js +17 -0
  282. package/node_modules/patch-package/dist/resolveRelativeFileDependencies.js +21 -0
  283. package/node_modules/patch-package/dist/resolveRelativeFileDependencies.test.js +22 -0
  284. package/node_modules/patch-package/dist/spawnSafe.js +28 -0
  285. package/node_modules/patch-package/index.js +3 -0
  286. package/node_modules/patch-package/node_modules/cross-spawn/CHANGELOG.md +100 -0
  287. package/node_modules/patch-package/node_modules/cross-spawn/LICENSE +21 -0
  288. package/node_modules/patch-package/node_modules/cross-spawn/README.md +94 -0
  289. package/node_modules/patch-package/node_modules/cross-spawn/index.js +39 -0
  290. package/node_modules/patch-package/node_modules/cross-spawn/lib/enoent.js +59 -0
  291. package/node_modules/patch-package/node_modules/cross-spawn/lib/parse.js +125 -0
  292. package/node_modules/patch-package/node_modules/cross-spawn/lib/util/escape.js +45 -0
  293. package/node_modules/patch-package/node_modules/cross-spawn/lib/util/readShebang.js +32 -0
  294. package/node_modules/patch-package/node_modules/cross-spawn/lib/util/resolveCommand.js +47 -0
  295. package/node_modules/patch-package/node_modules/cross-spawn/package.json +80 -0
  296. package/node_modules/patch-package/node_modules/path-key/index.js +13 -0
  297. package/node_modules/patch-package/node_modules/path-key/license +21 -0
  298. package/node_modules/patch-package/node_modules/path-key/package.json +43 -0
  299. package/node_modules/patch-package/node_modules/path-key/readme.md +51 -0
  300. package/node_modules/patch-package/node_modules/rimraf/LICENSE +15 -0
  301. package/node_modules/patch-package/node_modules/rimraf/README.md +101 -0
  302. package/node_modules/patch-package/node_modules/rimraf/bin.js +50 -0
  303. package/node_modules/patch-package/node_modules/rimraf/package.json +33 -0
  304. package/node_modules/patch-package/node_modules/rimraf/rimraf.js +372 -0
  305. package/node_modules/patch-package/node_modules/semver/CHANGELOG.md +39 -0
  306. package/node_modules/patch-package/node_modules/semver/LICENSE +15 -0
  307. package/node_modules/patch-package/node_modules/semver/README.md +412 -0
  308. package/node_modules/patch-package/node_modules/semver/bin/semver +160 -0
  309. package/node_modules/patch-package/node_modules/semver/package.json +32 -0
  310. package/node_modules/patch-package/node_modules/semver/range.bnf +16 -0
  311. package/node_modules/patch-package/node_modules/semver/semver.js +1483 -0
  312. package/node_modules/patch-package/node_modules/shebang-command/index.js +19 -0
  313. package/node_modules/patch-package/node_modules/shebang-command/license +21 -0
  314. package/node_modules/patch-package/node_modules/shebang-command/package.json +43 -0
  315. package/node_modules/patch-package/node_modules/shebang-command/readme.md +39 -0
  316. package/node_modules/patch-package/node_modules/shebang-regex/index.js +2 -0
  317. package/node_modules/patch-package/node_modules/shebang-regex/license +21 -0
  318. package/node_modules/patch-package/node_modules/shebang-regex/package.json +36 -0
  319. package/node_modules/patch-package/node_modules/shebang-regex/readme.md +29 -0
  320. package/node_modules/patch-package/node_modules/slash/index.js +11 -0
  321. package/node_modules/patch-package/node_modules/slash/license +9 -0
  322. package/node_modules/patch-package/node_modules/slash/package.json +38 -0
  323. package/node_modules/patch-package/node_modules/slash/readme.md +44 -0
  324. package/node_modules/patch-package/node_modules/which/CHANGELOG.md +152 -0
  325. package/node_modules/patch-package/node_modules/which/LICENSE +15 -0
  326. package/node_modules/patch-package/node_modules/which/README.md +51 -0
  327. package/node_modules/patch-package/node_modules/which/bin/which +52 -0
  328. package/node_modules/patch-package/node_modules/which/package.json +34 -0
  329. package/node_modules/patch-package/node_modules/which/which.js +135 -0
  330. package/node_modules/patch-package/package.json +100 -0
  331. package/node_modules/path-is-absolute/index.js +20 -0
  332. package/node_modules/path-is-absolute/license +21 -0
  333. package/node_modules/path-is-absolute/package.json +47 -0
  334. package/node_modules/path-is-absolute/readme.md +59 -0
  335. package/node_modules/picomatch/CHANGELOG.md +120 -0
  336. package/node_modules/picomatch/LICENSE +21 -0
  337. package/node_modules/picomatch/README.md +691 -0
  338. package/node_modules/picomatch/index.js +3 -0
  339. package/node_modules/picomatch/lib/constants.js +179 -0
  340. package/node_modules/picomatch/lib/parse.js +1078 -0
  341. package/node_modules/picomatch/lib/picomatch.js +339 -0
  342. package/node_modules/picomatch/lib/scan.js +385 -0
  343. package/node_modules/picomatch/lib/utils.js +64 -0
  344. package/node_modules/picomatch/package.json +85 -0
  345. package/node_modules/remove-markdown/.npmignore +1 -0
  346. package/node_modules/remove-markdown/LICENSE +21 -0
  347. package/node_modules/remove-markdown/README.md +44 -0
  348. package/node_modules/remove-markdown/index.js +60 -0
  349. package/node_modules/remove-markdown/package.json +31 -0
  350. package/node_modules/remove-markdown/test/remove-markdown.js +139 -0
  351. package/node_modules/semver/CHANGELOG.md +111 -0
  352. package/node_modules/semver/LICENSE +15 -0
  353. package/node_modules/semver/README.md +566 -0
  354. package/node_modules/semver/bin/semver.js +173 -0
  355. package/node_modules/semver/classes/comparator.js +135 -0
  356. package/node_modules/semver/classes/index.js +5 -0
  357. package/node_modules/semver/classes/range.js +510 -0
  358. package/node_modules/semver/classes/semver.js +287 -0
  359. package/node_modules/semver/functions/clean.js +6 -0
  360. package/node_modules/semver/functions/cmp.js +48 -0
  361. package/node_modules/semver/functions/coerce.js +51 -0
  362. package/node_modules/semver/functions/compare-build.js +7 -0
  363. package/node_modules/semver/functions/compare-loose.js +3 -0
  364. package/node_modules/semver/functions/compare.js +5 -0
  365. package/node_modules/semver/functions/diff.js +23 -0
  366. package/node_modules/semver/functions/eq.js +3 -0
  367. package/node_modules/semver/functions/gt.js +3 -0
  368. package/node_modules/semver/functions/gte.js +3 -0
  369. package/node_modules/semver/functions/inc.js +15 -0
  370. package/node_modules/semver/functions/lt.js +3 -0
  371. package/node_modules/semver/functions/lte.js +3 -0
  372. package/node_modules/semver/functions/major.js +3 -0
  373. package/node_modules/semver/functions/minor.js +3 -0
  374. package/node_modules/semver/functions/neq.js +3 -0
  375. package/node_modules/semver/functions/parse.js +33 -0
  376. package/node_modules/semver/functions/patch.js +3 -0
  377. package/node_modules/semver/functions/prerelease.js +6 -0
  378. package/node_modules/semver/functions/rcompare.js +3 -0
  379. package/node_modules/semver/functions/rsort.js +3 -0
  380. package/node_modules/semver/functions/satisfies.js +10 -0
  381. package/node_modules/semver/functions/sort.js +3 -0
  382. package/node_modules/semver/functions/valid.js +6 -0
  383. package/node_modules/semver/index.js +48 -0
  384. package/node_modules/semver/internal/constants.js +17 -0
  385. package/node_modules/semver/internal/debug.js +9 -0
  386. package/node_modules/semver/internal/identifiers.js +23 -0
  387. package/node_modules/semver/internal/parse-options.js +11 -0
  388. package/node_modules/semver/internal/re.js +182 -0
  389. package/node_modules/semver/package.json +45 -0
  390. package/node_modules/semver/preload.js +2 -0
  391. package/node_modules/semver/range.bnf +16 -0
  392. package/node_modules/semver/ranges/gtr.js +4 -0
  393. package/node_modules/semver/ranges/intersects.js +7 -0
  394. package/node_modules/semver/ranges/ltr.js +4 -0
  395. package/node_modules/semver/ranges/max-satisfying.js +25 -0
  396. package/node_modules/semver/ranges/min-satisfying.js +24 -0
  397. package/node_modules/semver/ranges/min-version.js +60 -0
  398. package/node_modules/semver/ranges/outside.js +80 -0
  399. package/node_modules/semver/ranges/simplify.js +44 -0
  400. package/node_modules/semver/ranges/subset.js +222 -0
  401. package/node_modules/semver/ranges/to-comparators.js +8 -0
  402. package/node_modules/semver/ranges/valid.js +11 -0
  403. package/node_modules/supports-color/browser.js +5 -0
  404. package/node_modules/supports-color/index.js +131 -0
  405. package/node_modules/supports-color/license +9 -0
  406. package/node_modules/supports-color/package.json +57 -0
  407. package/node_modules/supports-color/readme.md +66 -0
  408. package/node_modules/tmp/LICENSE +21 -0
  409. package/node_modules/tmp/README.md +314 -0
  410. package/node_modules/tmp/lib/tmp.js +611 -0
  411. package/node_modules/tmp/package.json +42 -0
  412. package/node_modules/to-regex-range/LICENSE +21 -0
  413. package/node_modules/to-regex-range/README.md +305 -0
  414. package/node_modules/to-regex-range/index.js +288 -0
  415. package/node_modules/to-regex-range/package.json +92 -0
  416. package/node_modules/universalify/LICENSE +20 -0
  417. package/node_modules/universalify/README.md +76 -0
  418. package/node_modules/universalify/index.js +25 -0
  419. package/node_modules/universalify/package.json +38 -0
  420. package/node_modules/wrappy/LICENSE +15 -0
  421. package/node_modules/wrappy/README.md +36 -0
  422. package/node_modules/wrappy/package.json +33 -0
  423. package/node_modules/wrappy/wrappy.js +33 -0
  424. package/node_modules/yallist/LICENSE +15 -0
  425. package/node_modules/yallist/README.md +204 -0
  426. package/node_modules/yallist/iterator.js +8 -0
  427. package/node_modules/yallist/package.json +33 -0
  428. package/node_modules/yallist/yallist.js +426 -0
  429. package/package.json +5 -1
@@ -0,0 +1,50 @@
1
+ {
2
+ "author": "Isaac Z. Schlueter <i@izs.me> (http://blog.izs.me/)",
3
+ "name": "glob",
4
+ "description": "a little globber",
5
+ "version": "7.1.6",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "git://github.com/isaacs/node-glob.git"
9
+ },
10
+ "main": "glob.js",
11
+ "files": [
12
+ "glob.js",
13
+ "sync.js",
14
+ "common.js"
15
+ ],
16
+ "engines": {
17
+ "node": "*"
18
+ },
19
+ "dependencies": {
20
+ "fs.realpath": "^1.0.0",
21
+ "inflight": "^1.0.4",
22
+ "inherits": "2",
23
+ "minimatch": "^3.0.4",
24
+ "once": "^1.3.0",
25
+ "path-is-absolute": "^1.0.0"
26
+ },
27
+ "devDependencies": {
28
+ "mkdirp": "0",
29
+ "rimraf": "^2.2.8",
30
+ "tap": "^12.0.1",
31
+ "tick": "0.0.6"
32
+ },
33
+ "scripts": {
34
+ "prepublish": "npm run benchclean",
35
+ "profclean": "rm -f v8.log profile.txt",
36
+ "test": "tap test/*.js --cov",
37
+ "test-regen": "npm run profclean && TEST_REGEN=1 node test/00-setup.js",
38
+ "bench": "bash benchmark.sh",
39
+ "prof": "bash prof.sh && cat profile.txt",
40
+ "benchclean": "node benchclean.js"
41
+ },
42
+ "license": "ISC",
43
+ "funding": {
44
+ "url": "https://github.com/sponsors/isaacs"
45
+ }
46
+
47
+ ,"_resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz"
48
+ ,"_integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA=="
49
+ ,"_from": "glob@7.1.6"
50
+ }
@@ -0,0 +1,486 @@
1
+ module.exports = globSync
2
+ globSync.GlobSync = GlobSync
3
+
4
+ var fs = require('fs')
5
+ var rp = require('fs.realpath')
6
+ var minimatch = require('minimatch')
7
+ var Minimatch = minimatch.Minimatch
8
+ var Glob = require('./glob.js').Glob
9
+ var util = require('util')
10
+ var path = require('path')
11
+ var assert = require('assert')
12
+ var isAbsolute = require('path-is-absolute')
13
+ var common = require('./common.js')
14
+ var alphasort = common.alphasort
15
+ var alphasorti = common.alphasorti
16
+ var setopts = common.setopts
17
+ var ownProp = common.ownProp
18
+ var childrenIgnored = common.childrenIgnored
19
+ var isIgnored = common.isIgnored
20
+
21
+ function globSync (pattern, options) {
22
+ if (typeof options === 'function' || arguments.length === 3)
23
+ throw new TypeError('callback provided to sync glob\n'+
24
+ 'See: https://github.com/isaacs/node-glob/issues/167')
25
+
26
+ return new GlobSync(pattern, options).found
27
+ }
28
+
29
+ function GlobSync (pattern, options) {
30
+ if (!pattern)
31
+ throw new Error('must provide pattern')
32
+
33
+ if (typeof options === 'function' || arguments.length === 3)
34
+ throw new TypeError('callback provided to sync glob\n'+
35
+ 'See: https://github.com/isaacs/node-glob/issues/167')
36
+
37
+ if (!(this instanceof GlobSync))
38
+ return new GlobSync(pattern, options)
39
+
40
+ setopts(this, pattern, options)
41
+
42
+ if (this.noprocess)
43
+ return this
44
+
45
+ var n = this.minimatch.set.length
46
+ this.matches = new Array(n)
47
+ for (var i = 0; i < n; i ++) {
48
+ this._process(this.minimatch.set[i], i, false)
49
+ }
50
+ this._finish()
51
+ }
52
+
53
+ GlobSync.prototype._finish = function () {
54
+ assert(this instanceof GlobSync)
55
+ if (this.realpath) {
56
+ var self = this
57
+ this.matches.forEach(function (matchset, index) {
58
+ var set = self.matches[index] = Object.create(null)
59
+ for (var p in matchset) {
60
+ try {
61
+ p = self._makeAbs(p)
62
+ var real = rp.realpathSync(p, self.realpathCache)
63
+ set[real] = true
64
+ } catch (er) {
65
+ if (er.syscall === 'stat')
66
+ set[self._makeAbs(p)] = true
67
+ else
68
+ throw er
69
+ }
70
+ }
71
+ })
72
+ }
73
+ common.finish(this)
74
+ }
75
+
76
+
77
+ GlobSync.prototype._process = function (pattern, index, inGlobStar) {
78
+ assert(this instanceof GlobSync)
79
+
80
+ // Get the first [n] parts of pattern that are all strings.
81
+ var n = 0
82
+ while (typeof pattern[n] === 'string') {
83
+ n ++
84
+ }
85
+ // now n is the index of the first one that is *not* a string.
86
+
87
+ // See if there's anything else
88
+ var prefix
89
+ switch (n) {
90
+ // if not, then this is rather simple
91
+ case pattern.length:
92
+ this._processSimple(pattern.join('/'), index)
93
+ return
94
+
95
+ case 0:
96
+ // pattern *starts* with some non-trivial item.
97
+ // going to readdir(cwd), but not include the prefix in matches.
98
+ prefix = null
99
+ break
100
+
101
+ default:
102
+ // pattern has some string bits in the front.
103
+ // whatever it starts with, whether that's 'absolute' like /foo/bar,
104
+ // or 'relative' like '../baz'
105
+ prefix = pattern.slice(0, n).join('/')
106
+ break
107
+ }
108
+
109
+ var remain = pattern.slice(n)
110
+
111
+ // get the list of entries.
112
+ var read
113
+ if (prefix === null)
114
+ read = '.'
115
+ else if (isAbsolute(prefix) || isAbsolute(pattern.join('/'))) {
116
+ if (!prefix || !isAbsolute(prefix))
117
+ prefix = '/' + prefix
118
+ read = prefix
119
+ } else
120
+ read = prefix
121
+
122
+ var abs = this._makeAbs(read)
123
+
124
+ //if ignored, skip processing
125
+ if (childrenIgnored(this, read))
126
+ return
127
+
128
+ var isGlobStar = remain[0] === minimatch.GLOBSTAR
129
+ if (isGlobStar)
130
+ this._processGlobStar(prefix, read, abs, remain, index, inGlobStar)
131
+ else
132
+ this._processReaddir(prefix, read, abs, remain, index, inGlobStar)
133
+ }
134
+
135
+
136
+ GlobSync.prototype._processReaddir = function (prefix, read, abs, remain, index, inGlobStar) {
137
+ var entries = this._readdir(abs, inGlobStar)
138
+
139
+ // if the abs isn't a dir, then nothing can match!
140
+ if (!entries)
141
+ return
142
+
143
+ // It will only match dot entries if it starts with a dot, or if
144
+ // dot is set. Stuff like @(.foo|.bar) isn't allowed.
145
+ var pn = remain[0]
146
+ var negate = !!this.minimatch.negate
147
+ var rawGlob = pn._glob
148
+ var dotOk = this.dot || rawGlob.charAt(0) === '.'
149
+
150
+ var matchedEntries = []
151
+ for (var i = 0; i < entries.length; i++) {
152
+ var e = entries[i]
153
+ if (e.charAt(0) !== '.' || dotOk) {
154
+ var m
155
+ if (negate && !prefix) {
156
+ m = !e.match(pn)
157
+ } else {
158
+ m = e.match(pn)
159
+ }
160
+ if (m)
161
+ matchedEntries.push(e)
162
+ }
163
+ }
164
+
165
+ var len = matchedEntries.length
166
+ // If there are no matched entries, then nothing matches.
167
+ if (len === 0)
168
+ return
169
+
170
+ // if this is the last remaining pattern bit, then no need for
171
+ // an additional stat *unless* the user has specified mark or
172
+ // stat explicitly. We know they exist, since readdir returned
173
+ // them.
174
+
175
+ if (remain.length === 1 && !this.mark && !this.stat) {
176
+ if (!this.matches[index])
177
+ this.matches[index] = Object.create(null)
178
+
179
+ for (var i = 0; i < len; i ++) {
180
+ var e = matchedEntries[i]
181
+ if (prefix) {
182
+ if (prefix.slice(-1) !== '/')
183
+ e = prefix + '/' + e
184
+ else
185
+ e = prefix + e
186
+ }
187
+
188
+ if (e.charAt(0) === '/' && !this.nomount) {
189
+ e = path.join(this.root, e)
190
+ }
191
+ this._emitMatch(index, e)
192
+ }
193
+ // This was the last one, and no stats were needed
194
+ return
195
+ }
196
+
197
+ // now test all matched entries as stand-ins for that part
198
+ // of the pattern.
199
+ remain.shift()
200
+ for (var i = 0; i < len; i ++) {
201
+ var e = matchedEntries[i]
202
+ var newPattern
203
+ if (prefix)
204
+ newPattern = [prefix, e]
205
+ else
206
+ newPattern = [e]
207
+ this._process(newPattern.concat(remain), index, inGlobStar)
208
+ }
209
+ }
210
+
211
+
212
+ GlobSync.prototype._emitMatch = function (index, e) {
213
+ if (isIgnored(this, e))
214
+ return
215
+
216
+ var abs = this._makeAbs(e)
217
+
218
+ if (this.mark)
219
+ e = this._mark(e)
220
+
221
+ if (this.absolute) {
222
+ e = abs
223
+ }
224
+
225
+ if (this.matches[index][e])
226
+ return
227
+
228
+ if (this.nodir) {
229
+ var c = this.cache[abs]
230
+ if (c === 'DIR' || Array.isArray(c))
231
+ return
232
+ }
233
+
234
+ this.matches[index][e] = true
235
+
236
+ if (this.stat)
237
+ this._stat(e)
238
+ }
239
+
240
+
241
+ GlobSync.prototype._readdirInGlobStar = function (abs) {
242
+ // follow all symlinked directories forever
243
+ // just proceed as if this is a non-globstar situation
244
+ if (this.follow)
245
+ return this._readdir(abs, false)
246
+
247
+ var entries
248
+ var lstat
249
+ var stat
250
+ try {
251
+ lstat = fs.lstatSync(abs)
252
+ } catch (er) {
253
+ if (er.code === 'ENOENT') {
254
+ // lstat failed, doesn't exist
255
+ return null
256
+ }
257
+ }
258
+
259
+ var isSym = lstat && lstat.isSymbolicLink()
260
+ this.symlinks[abs] = isSym
261
+
262
+ // If it's not a symlink or a dir, then it's definitely a regular file.
263
+ // don't bother doing a readdir in that case.
264
+ if (!isSym && lstat && !lstat.isDirectory())
265
+ this.cache[abs] = 'FILE'
266
+ else
267
+ entries = this._readdir(abs, false)
268
+
269
+ return entries
270
+ }
271
+
272
+ GlobSync.prototype._readdir = function (abs, inGlobStar) {
273
+ var entries
274
+
275
+ if (inGlobStar && !ownProp(this.symlinks, abs))
276
+ return this._readdirInGlobStar(abs)
277
+
278
+ if (ownProp(this.cache, abs)) {
279
+ var c = this.cache[abs]
280
+ if (!c || c === 'FILE')
281
+ return null
282
+
283
+ if (Array.isArray(c))
284
+ return c
285
+ }
286
+
287
+ try {
288
+ return this._readdirEntries(abs, fs.readdirSync(abs))
289
+ } catch (er) {
290
+ this._readdirError(abs, er)
291
+ return null
292
+ }
293
+ }
294
+
295
+ GlobSync.prototype._readdirEntries = function (abs, entries) {
296
+ // if we haven't asked to stat everything, then just
297
+ // assume that everything in there exists, so we can avoid
298
+ // having to stat it a second time.
299
+ if (!this.mark && !this.stat) {
300
+ for (var i = 0; i < entries.length; i ++) {
301
+ var e = entries[i]
302
+ if (abs === '/')
303
+ e = abs + e
304
+ else
305
+ e = abs + '/' + e
306
+ this.cache[e] = true
307
+ }
308
+ }
309
+
310
+ this.cache[abs] = entries
311
+
312
+ // mark and cache dir-ness
313
+ return entries
314
+ }
315
+
316
+ GlobSync.prototype._readdirError = function (f, er) {
317
+ // handle errors, and cache the information
318
+ switch (er.code) {
319
+ case 'ENOTSUP': // https://github.com/isaacs/node-glob/issues/205
320
+ case 'ENOTDIR': // totally normal. means it *does* exist.
321
+ var abs = this._makeAbs(f)
322
+ this.cache[abs] = 'FILE'
323
+ if (abs === this.cwdAbs) {
324
+ var error = new Error(er.code + ' invalid cwd ' + this.cwd)
325
+ error.path = this.cwd
326
+ error.code = er.code
327
+ throw error
328
+ }
329
+ break
330
+
331
+ case 'ENOENT': // not terribly unusual
332
+ case 'ELOOP':
333
+ case 'ENAMETOOLONG':
334
+ case 'UNKNOWN':
335
+ this.cache[this._makeAbs(f)] = false
336
+ break
337
+
338
+ default: // some unusual error. Treat as failure.
339
+ this.cache[this._makeAbs(f)] = false
340
+ if (this.strict)
341
+ throw er
342
+ if (!this.silent)
343
+ console.error('glob error', er)
344
+ break
345
+ }
346
+ }
347
+
348
+ GlobSync.prototype._processGlobStar = function (prefix, read, abs, remain, index, inGlobStar) {
349
+
350
+ var entries = this._readdir(abs, inGlobStar)
351
+
352
+ // no entries means not a dir, so it can never have matches
353
+ // foo.txt/** doesn't match foo.txt
354
+ if (!entries)
355
+ return
356
+
357
+ // test without the globstar, and with every child both below
358
+ // and replacing the globstar.
359
+ var remainWithoutGlobStar = remain.slice(1)
360
+ var gspref = prefix ? [ prefix ] : []
361
+ var noGlobStar = gspref.concat(remainWithoutGlobStar)
362
+
363
+ // the noGlobStar pattern exits the inGlobStar state
364
+ this._process(noGlobStar, index, false)
365
+
366
+ var len = entries.length
367
+ var isSym = this.symlinks[abs]
368
+
369
+ // If it's a symlink, and we're in a globstar, then stop
370
+ if (isSym && inGlobStar)
371
+ return
372
+
373
+ for (var i = 0; i < len; i++) {
374
+ var e = entries[i]
375
+ if (e.charAt(0) === '.' && !this.dot)
376
+ continue
377
+
378
+ // these two cases enter the inGlobStar state
379
+ var instead = gspref.concat(entries[i], remainWithoutGlobStar)
380
+ this._process(instead, index, true)
381
+
382
+ var below = gspref.concat(entries[i], remain)
383
+ this._process(below, index, true)
384
+ }
385
+ }
386
+
387
+ GlobSync.prototype._processSimple = function (prefix, index) {
388
+ // XXX review this. Shouldn't it be doing the mounting etc
389
+ // before doing stat? kinda weird?
390
+ var exists = this._stat(prefix)
391
+
392
+ if (!this.matches[index])
393
+ this.matches[index] = Object.create(null)
394
+
395
+ // If it doesn't exist, then just mark the lack of results
396
+ if (!exists)
397
+ return
398
+
399
+ if (prefix && isAbsolute(prefix) && !this.nomount) {
400
+ var trail = /[\/\\]$/.test(prefix)
401
+ if (prefix.charAt(0) === '/') {
402
+ prefix = path.join(this.root, prefix)
403
+ } else {
404
+ prefix = path.resolve(this.root, prefix)
405
+ if (trail)
406
+ prefix += '/'
407
+ }
408
+ }
409
+
410
+ if (process.platform === 'win32')
411
+ prefix = prefix.replace(/\\/g, '/')
412
+
413
+ // Mark this as a match
414
+ this._emitMatch(index, prefix)
415
+ }
416
+
417
+ // Returns either 'DIR', 'FILE', or false
418
+ GlobSync.prototype._stat = function (f) {
419
+ var abs = this._makeAbs(f)
420
+ var needDir = f.slice(-1) === '/'
421
+
422
+ if (f.length > this.maxLength)
423
+ return false
424
+
425
+ if (!this.stat && ownProp(this.cache, abs)) {
426
+ var c = this.cache[abs]
427
+
428
+ if (Array.isArray(c))
429
+ c = 'DIR'
430
+
431
+ // It exists, but maybe not how we need it
432
+ if (!needDir || c === 'DIR')
433
+ return c
434
+
435
+ if (needDir && c === 'FILE')
436
+ return false
437
+
438
+ // otherwise we have to stat, because maybe c=true
439
+ // if we know it exists, but not what it is.
440
+ }
441
+
442
+ var exists
443
+ var stat = this.statCache[abs]
444
+ if (!stat) {
445
+ var lstat
446
+ try {
447
+ lstat = fs.lstatSync(abs)
448
+ } catch (er) {
449
+ if (er && (er.code === 'ENOENT' || er.code === 'ENOTDIR')) {
450
+ this.statCache[abs] = false
451
+ return false
452
+ }
453
+ }
454
+
455
+ if (lstat && lstat.isSymbolicLink()) {
456
+ try {
457
+ stat = fs.statSync(abs)
458
+ } catch (er) {
459
+ stat = lstat
460
+ }
461
+ } else {
462
+ stat = lstat
463
+ }
464
+ }
465
+
466
+ this.statCache[abs] = stat
467
+
468
+ var c = true
469
+ if (stat)
470
+ c = stat.isDirectory() ? 'DIR' : 'FILE'
471
+
472
+ this.cache[abs] = this.cache[abs] || c
473
+
474
+ if (needDir && c === 'FILE')
475
+ return false
476
+
477
+ return c
478
+ }
479
+
480
+ GlobSync.prototype._mark = function (p) {
481
+ return common.mark(this, p)
482
+ }
483
+
484
+ GlobSync.prototype._makeAbs = function (f) {
485
+ return common.makeAbs(this, f)
486
+ }
@@ -0,0 +1,15 @@
1
+ The ISC License
2
+
3
+ Copyright (c) Isaac Z. Schlueter, Ben Noordhuis, and Contributors
4
+
5
+ Permission to use, copy, modify, and/or distribute this software for any
6
+ purpose with or without fee is hereby granted, provided that the above
7
+ copyright notice and this permission notice appear in all copies.
8
+
9
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
10
+ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
11
+ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
12
+ ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
13
+ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
14
+ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
15
+ IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
@@ -0,0 +1,133 @@
1
+ # graceful-fs
2
+
3
+ graceful-fs functions as a drop-in replacement for the fs module,
4
+ making various improvements.
5
+
6
+ The improvements are meant to normalize behavior across different
7
+ platforms and environments, and to make filesystem access more
8
+ resilient to errors.
9
+
10
+ ## Improvements over [fs module](https://nodejs.org/api/fs.html)
11
+
12
+ * Queues up `open` and `readdir` calls, and retries them once
13
+ something closes if there is an EMFILE error from too many file
14
+ descriptors.
15
+ * fixes `lchmod` for Node versions prior to 0.6.2.
16
+ * implements `fs.lutimes` if possible. Otherwise it becomes a noop.
17
+ * ignores `EINVAL` and `EPERM` errors in `chown`, `fchown` or
18
+ `lchown` if the user isn't root.
19
+ * makes `lchmod` and `lchown` become noops, if not available.
20
+ * retries reading a file if `read` results in EAGAIN error.
21
+
22
+ On Windows, it retries renaming a file for up to one second if `EACCESS`
23
+ or `EPERM` error occurs, likely because antivirus software has locked
24
+ the directory.
25
+
26
+ ## USAGE
27
+
28
+ ```javascript
29
+ // use just like fs
30
+ var fs = require('graceful-fs')
31
+
32
+ // now go and do stuff with it...
33
+ fs.readFileSync('some-file-or-whatever')
34
+ ```
35
+
36
+ ## Global Patching
37
+
38
+ If you want to patch the global fs module (or any other fs-like
39
+ module) you can do this:
40
+
41
+ ```javascript
42
+ // Make sure to read the caveat below.
43
+ var realFs = require('fs')
44
+ var gracefulFs = require('graceful-fs')
45
+ gracefulFs.gracefulify(realFs)
46
+ ```
47
+
48
+ This should only ever be done at the top-level application layer, in
49
+ order to delay on EMFILE errors from any fs-using dependencies. You
50
+ should **not** do this in a library, because it can cause unexpected
51
+ delays in other parts of the program.
52
+
53
+ ## Changes
54
+
55
+ This module is fairly stable at this point, and used by a lot of
56
+ things. That being said, because it implements a subtle behavior
57
+ change in a core part of the node API, even modest changes can be
58
+ extremely breaking, and the versioning is thus biased towards
59
+ bumping the major when in doubt.
60
+
61
+ The main change between major versions has been switching between
62
+ providing a fully-patched `fs` module vs monkey-patching the node core
63
+ builtin, and the approach by which a non-monkey-patched `fs` was
64
+ created.
65
+
66
+ The goal is to trade `EMFILE` errors for slower fs operations. So, if
67
+ you try to open a zillion files, rather than crashing, `open`
68
+ operations will be queued up and wait for something else to `close`.
69
+
70
+ There are advantages to each approach. Monkey-patching the fs means
71
+ that no `EMFILE` errors can possibly occur anywhere in your
72
+ application, because everything is using the same core `fs` module,
73
+ which is patched. However, it can also obviously cause undesirable
74
+ side-effects, especially if the module is loaded multiple times.
75
+
76
+ Implementing a separate-but-identical patched `fs` module is more
77
+ surgical (and doesn't run the risk of patching multiple times), but
78
+ also imposes the challenge of keeping in sync with the core module.
79
+
80
+ The current approach loads the `fs` module, and then creates a
81
+ lookalike object that has all the same methods, except a few that are
82
+ patched. It is safe to use in all versions of Node from 0.8 through
83
+ 7.0.
84
+
85
+ ### v4
86
+
87
+ * Do not monkey-patch the fs module. This module may now be used as a
88
+ drop-in dep, and users can opt into monkey-patching the fs builtin
89
+ if their app requires it.
90
+
91
+ ### v3
92
+
93
+ * Monkey-patch fs, because the eval approach no longer works on recent
94
+ node.
95
+ * fixed possible type-error throw if rename fails on windows
96
+ * verify that we *never* get EMFILE errors
97
+ * Ignore ENOSYS from chmod/chown
98
+ * clarify that graceful-fs must be used as a drop-in
99
+
100
+ ### v2.1.0
101
+
102
+ * Use eval rather than monkey-patching fs.
103
+ * readdir: Always sort the results
104
+ * win32: requeue a file if error has an OK status
105
+
106
+ ### v2.0
107
+
108
+ * A return to monkey patching
109
+ * wrap process.cwd
110
+
111
+ ### v1.1
112
+
113
+ * wrap readFile
114
+ * Wrap fs.writeFile.
115
+ * readdir protection
116
+ * Don't clobber the fs builtin
117
+ * Handle fs.read EAGAIN errors by trying again
118
+ * Expose the curOpen counter
119
+ * No-op lchown/lchmod if not implemented
120
+ * fs.rename patch only for win32
121
+ * Patch fs.rename to handle AV software on Windows
122
+ * Close #4 Chown should not fail on einval or eperm if non-root
123
+ * Fix isaacs/fstream#1 Only wrap fs one time
124
+ * Fix #3 Start at 1024 max files, then back off on EMFILE
125
+ * lutimes that doens't blow up on Linux
126
+ * A full on-rewrite using a queue instead of just swallowing the EMFILE error
127
+ * Wrap Read/Write streams as well
128
+
129
+ ### 1.0
130
+
131
+ * Update engines for node 0.6
132
+ * Be lstat-graceful on Windows
133
+ * first
@@ -0,0 +1,23 @@
1
+ 'use strict'
2
+
3
+ module.exports = clone
4
+
5
+ var getPrototypeOf = Object.getPrototypeOf || function (obj) {
6
+ return obj.__proto__
7
+ }
8
+
9
+ function clone (obj) {
10
+ if (obj === null || typeof obj !== 'object')
11
+ return obj
12
+
13
+ if (obj instanceof Object)
14
+ var copy = { __proto__: getPrototypeOf(obj) }
15
+ else
16
+ var copy = Object.create(null)
17
+
18
+ Object.getOwnPropertyNames(obj).forEach(function (key) {
19
+ Object.defineProperty(copy, key, Object.getOwnPropertyDescriptor(obj, key))
20
+ })
21
+
22
+ return copy
23
+ }