elm-pages 3.0.0-beta.13 → 3.0.0-beta.15

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 (501) hide show
  1. package/README.md +1 -1
  2. package/codegen/elm-pages-codegen.js +1497 -1130
  3. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmi +0 -0
  4. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmo +0 -0
  5. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateDataTest.elmo +0 -0
  6. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/d.dat +0 -0
  7. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/o.dat +0 -0
  8. package/generator/dead-code-review/elm-stuff/tests-0.19.1/elm.json +1 -1
  9. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/Reporter.elm.js +1 -1
  10. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/Runner.elm.js +152 -40
  11. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/node_runner.js +1 -1
  12. package/generator/dead-code-review/elm-stuff/tests-0.19.1/js/node_supervisor.js +4 -4
  13. package/generator/dead-code-review/src/Pages/Review/DeadCodeEliminateData.elm +58 -10
  14. package/generator/dead-code-review/tests/Pages/Review/DeadCodeEliminateDataTest.elm +45 -29
  15. package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/d.dat +0 -0
  16. package/generator/review/elm-stuff/tests-0.19.1/elm-stuff/0.19.1/o.dat +0 -0
  17. package/generator/review/elm-stuff/tests-0.19.1/elm.json +1 -1
  18. package/generator/review/elm-stuff/tests-0.19.1/js/Reporter.elm.js +1 -1
  19. package/generator/review/elm-stuff/tests-0.19.1/js/Runner.elm.js +46 -5
  20. package/generator/review/elm-stuff/tests-0.19.1/js/node_runner.js +1 -1
  21. package/generator/review/elm-stuff/tests-0.19.1/js/node_supervisor.js +4 -4
  22. package/generator/src/RouteBuilder.elm +66 -52
  23. package/generator/src/SharedTemplate.elm +3 -2
  24. package/generator/src/SiteConfig.elm +3 -2
  25. package/generator/src/build.js +5 -5
  26. package/generator/src/cli.js +7 -6
  27. package/generator/src/compatibility-key.js +1 -1
  28. package/generator/src/dev-server.js +7 -7
  29. package/generator/src/error-formatter.js +7 -3
  30. package/generator/src/render-test.js +109 -0
  31. package/generator/src/render.js +83 -66
  32. package/generator/src/request-cache.js +181 -160
  33. package/generator/static-code/hmr.js +16 -2
  34. package/generator/template/app/Api.elm +2 -2
  35. package/generator/template/app/Route/Index.elm +3 -3
  36. package/generator/template/app/Shared.elm +3 -3
  37. package/generator/template/app/Site.elm +3 -3
  38. package/package.json +10 -10
  39. package/src/ApiRoute.elm +60 -57
  40. package/src/BackendTask/Env.elm +89 -0
  41. package/src/{DataSource → BackendTask}/File.elm +89 -43
  42. package/src/{DataSource → BackendTask}/Glob.elm +134 -125
  43. package/src/BackendTask/Http.elm +673 -0
  44. package/src/{DataSource → BackendTask}/Internal/Glob.elm +1 -1
  45. package/src/BackendTask/Internal/Request.elm +28 -0
  46. package/src/BackendTask/Port.elm +206 -0
  47. package/src/{DataSource.elm → BackendTask.elm} +223 -207
  48. package/src/Exception.elm +95 -0
  49. package/src/Form.elm +21 -20
  50. package/src/Head.elm +7 -7
  51. package/src/Internal/ApiRoute.elm +7 -5
  52. package/src/PageServerResponse.elm +6 -1
  53. package/src/Pages/Generate.elm +334 -165
  54. package/src/Pages/Internal/Platform/Cli.elm +432 -761
  55. package/src/Pages/Internal/Platform/Cli.elm.bak +22 -22
  56. package/src/Pages/Internal/Platform/CompatibilityKey.elm +1 -1
  57. package/src/Pages/Internal/Platform/Effect.elm +0 -1
  58. package/src/Pages/Internal/Platform/GeneratorApplication.elm +63 -147
  59. package/src/Pages/Internal/Platform/StaticResponses.elm +73 -301
  60. package/src/Pages/Internal/Platform/ToJsPayload.elm +4 -4
  61. package/src/Pages/Internal/Platform.elm +25 -31
  62. package/src/Pages/Internal/Script.elm +3 -2
  63. package/src/Pages/Internal/StaticHttpBody.elm +35 -1
  64. package/src/Pages/Manifest.elm +5 -4
  65. package/src/Pages/ProgramConfig.elm +8 -7
  66. package/src/Pages/Script.elm +28 -13
  67. package/src/Pages/SiteConfig.elm +3 -2
  68. package/src/Pages/StaticHttp/Request.elm +2 -2
  69. package/src/Pages/StaticHttpRequest.elm +23 -100
  70. package/src/RequestsAndPending.elm +8 -19
  71. package/src/Server/Request.elm +15 -14
  72. package/src/Server/Session.elm +34 -34
  73. package/src/Server/SetCookie.elm +1 -1
  74. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/dependencies.75364bef27ac5a049b87c3325f846fc6dbda23b8ed7187ed06748b96bb6a50a7.json +0 -1
  75. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Console-Text.elmi +0 -0
  76. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Console-Text.elmo +0 -0
  77. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmi +0 -0
  78. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateData.elmo +0 -0
  79. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateDataTest.elmi +0 -0
  80. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Pages-Review-DeadCodeEliminateDataTest.elmo +0 -0
  81. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Generated-Main.elmi +0 -0
  82. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Generated-Main.elmo +0 -0
  83. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format-Color.elmi +0 -0
  84. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format-Color.elmo +0 -0
  85. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format-Monochrome.elmi +0 -0
  86. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format-Monochrome.elmo +0 -0
  87. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format.elmi +0 -0
  88. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console-Format.elmo +0 -0
  89. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console.elmi +0 -0
  90. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Console.elmo +0 -0
  91. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Highlightable.elmi +0 -0
  92. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Highlightable.elmo +0 -0
  93. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-JUnit.elmi +0 -0
  94. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-JUnit.elmo +0 -0
  95. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Json.elmi +0 -0
  96. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Json.elmo +0 -0
  97. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Reporter.elmi +0 -0
  98. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-Reporter.elmo +0 -0
  99. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-TestResults.elmi +0 -0
  100. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Reporter-TestResults.elmo +0 -0
  101. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-JsMessage.elmi +0 -0
  102. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-JsMessage.elmo +0 -0
  103. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node-Vendor-Console.elmi +0 -0
  104. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node-Vendor-Console.elmo +0 -0
  105. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node-Vendor-Diff.elmi +0 -0
  106. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node-Vendor-Diff.elmo +0 -0
  107. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node.elmi +0 -0
  108. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/Test-Runner-Node.elmo +0 -0
  109. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/d.dat +0 -0
  110. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/i.dat +0 -0
  111. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/lock +0 -0
  112. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm-stuff/0.19.1/o.dat +0 -0
  113. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elm.json +0 -38
  114. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/elmTestOutput.js +0 -29603
  115. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/package.json +0 -1
  116. package/generator/dead-code-review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision9/src/Test/Generated/Main.elm +0 -27
  117. package/generator/dead-code-review/node_modules/.package-lock.json +0 -484
  118. package/generator/dead-code-review/node_modules/ansi-styles/index.d.ts +0 -345
  119. package/generator/dead-code-review/node_modules/ansi-styles/index.js +0 -163
  120. package/generator/dead-code-review/node_modules/ansi-styles/license +0 -9
  121. package/generator/dead-code-review/node_modules/ansi-styles/package.json +0 -56
  122. package/generator/dead-code-review/node_modules/ansi-styles/readme.md +0 -152
  123. package/generator/dead-code-review/node_modules/anymatch/LICENSE +0 -15
  124. package/generator/dead-code-review/node_modules/anymatch/README.md +0 -87
  125. package/generator/dead-code-review/node_modules/anymatch/index.d.ts +0 -20
  126. package/generator/dead-code-review/node_modules/anymatch/index.js +0 -104
  127. package/generator/dead-code-review/node_modules/anymatch/package.json +0 -48
  128. package/generator/dead-code-review/node_modules/balanced-match/.github/FUNDING.yml +0 -2
  129. package/generator/dead-code-review/node_modules/balanced-match/LICENSE.md +0 -21
  130. package/generator/dead-code-review/node_modules/balanced-match/README.md +0 -97
  131. package/generator/dead-code-review/node_modules/balanced-match/index.js +0 -62
  132. package/generator/dead-code-review/node_modules/balanced-match/package.json +0 -48
  133. package/generator/dead-code-review/node_modules/binary-extensions/binary-extensions.json +0 -260
  134. package/generator/dead-code-review/node_modules/binary-extensions/binary-extensions.json.d.ts +0 -3
  135. package/generator/dead-code-review/node_modules/binary-extensions/index.d.ts +0 -14
  136. package/generator/dead-code-review/node_modules/binary-extensions/index.js +0 -1
  137. package/generator/dead-code-review/node_modules/binary-extensions/license +0 -9
  138. package/generator/dead-code-review/node_modules/binary-extensions/package.json +0 -38
  139. package/generator/dead-code-review/node_modules/binary-extensions/readme.md +0 -41
  140. package/generator/dead-code-review/node_modules/brace-expansion/.github/FUNDING.yml +0 -2
  141. package/generator/dead-code-review/node_modules/brace-expansion/LICENSE +0 -21
  142. package/generator/dead-code-review/node_modules/brace-expansion/README.md +0 -135
  143. package/generator/dead-code-review/node_modules/brace-expansion/index.js +0 -203
  144. package/generator/dead-code-review/node_modules/brace-expansion/package.json +0 -46
  145. package/generator/dead-code-review/node_modules/braces/CHANGELOG.md +0 -184
  146. package/generator/dead-code-review/node_modules/braces/LICENSE +0 -21
  147. package/generator/dead-code-review/node_modules/braces/README.md +0 -593
  148. package/generator/dead-code-review/node_modules/braces/index.js +0 -170
  149. package/generator/dead-code-review/node_modules/braces/lib/compile.js +0 -57
  150. package/generator/dead-code-review/node_modules/braces/lib/constants.js +0 -57
  151. package/generator/dead-code-review/node_modules/braces/lib/expand.js +0 -113
  152. package/generator/dead-code-review/node_modules/braces/lib/parse.js +0 -333
  153. package/generator/dead-code-review/node_modules/braces/lib/stringify.js +0 -32
  154. package/generator/dead-code-review/node_modules/braces/lib/utils.js +0 -112
  155. package/generator/dead-code-review/node_modules/braces/package.json +0 -77
  156. package/generator/dead-code-review/node_modules/chalk/index.d.ts +0 -415
  157. package/generator/dead-code-review/node_modules/chalk/license +0 -9
  158. package/generator/dead-code-review/node_modules/chalk/package.json +0 -68
  159. package/generator/dead-code-review/node_modules/chalk/readme.md +0 -341
  160. package/generator/dead-code-review/node_modules/chalk/source/index.js +0 -229
  161. package/generator/dead-code-review/node_modules/chalk/source/templates.js +0 -134
  162. package/generator/dead-code-review/node_modules/chalk/source/util.js +0 -39
  163. package/generator/dead-code-review/node_modules/chokidar/LICENSE +0 -21
  164. package/generator/dead-code-review/node_modules/chokidar/README.md +0 -308
  165. package/generator/dead-code-review/node_modules/chokidar/index.js +0 -973
  166. package/generator/dead-code-review/node_modules/chokidar/lib/constants.js +0 -65
  167. package/generator/dead-code-review/node_modules/chokidar/lib/fsevents-handler.js +0 -524
  168. package/generator/dead-code-review/node_modules/chokidar/lib/nodefs-handler.js +0 -654
  169. package/generator/dead-code-review/node_modules/chokidar/package.json +0 -85
  170. package/generator/dead-code-review/node_modules/chokidar/types/index.d.ts +0 -188
  171. package/generator/dead-code-review/node_modules/color-convert/CHANGELOG.md +0 -54
  172. package/generator/dead-code-review/node_modules/color-convert/LICENSE +0 -21
  173. package/generator/dead-code-review/node_modules/color-convert/README.md +0 -68
  174. package/generator/dead-code-review/node_modules/color-convert/conversions.js +0 -839
  175. package/generator/dead-code-review/node_modules/color-convert/index.js +0 -81
  176. package/generator/dead-code-review/node_modules/color-convert/package.json +0 -48
  177. package/generator/dead-code-review/node_modules/color-convert/route.js +0 -97
  178. package/generator/dead-code-review/node_modules/color-name/LICENSE +0 -8
  179. package/generator/dead-code-review/node_modules/color-name/README.md +0 -11
  180. package/generator/dead-code-review/node_modules/color-name/index.js +0 -152
  181. package/generator/dead-code-review/node_modules/color-name/package.json +0 -28
  182. package/generator/dead-code-review/node_modules/commander/LICENSE +0 -22
  183. package/generator/dead-code-review/node_modules/commander/Readme.md +0 -1118
  184. package/generator/dead-code-review/node_modules/commander/esm.mjs +0 -16
  185. package/generator/dead-code-review/node_modules/commander/index.js +0 -27
  186. package/generator/dead-code-review/node_modules/commander/lib/argument.js +0 -147
  187. package/generator/dead-code-review/node_modules/commander/lib/command.js +0 -2160
  188. package/generator/dead-code-review/node_modules/commander/lib/error.js +0 -45
  189. package/generator/dead-code-review/node_modules/commander/lib/help.js +0 -406
  190. package/generator/dead-code-review/node_modules/commander/lib/option.js +0 -326
  191. package/generator/dead-code-review/node_modules/commander/lib/suggestSimilar.js +0 -100
  192. package/generator/dead-code-review/node_modules/commander/package-support.json +0 -16
  193. package/generator/dead-code-review/node_modules/commander/package.json +0 -80
  194. package/generator/dead-code-review/node_modules/commander/typings/index.d.ts +0 -881
  195. package/generator/dead-code-review/node_modules/cross-spawn/CHANGELOG.md +0 -130
  196. package/generator/dead-code-review/node_modules/cross-spawn/LICENSE +0 -21
  197. package/generator/dead-code-review/node_modules/cross-spawn/README.md +0 -96
  198. package/generator/dead-code-review/node_modules/cross-spawn/index.js +0 -39
  199. package/generator/dead-code-review/node_modules/cross-spawn/lib/enoent.js +0 -59
  200. package/generator/dead-code-review/node_modules/cross-spawn/lib/parse.js +0 -91
  201. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/escape.js +0 -45
  202. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/readShebang.js +0 -23
  203. package/generator/dead-code-review/node_modules/cross-spawn/lib/util/resolveCommand.js +0 -52
  204. package/generator/dead-code-review/node_modules/cross-spawn/package.json +0 -73
  205. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/LICENSE +0 -373
  206. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/README.md +0 -64
  207. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm.d.ts +0 -22
  208. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm.js +0 -419
  209. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/elm_solve_deps_wasm_bg.wasm +0 -0
  210. package/generator/dead-code-review/node_modules/elm-solve-deps-wasm/package.json +0 -27
  211. package/generator/dead-code-review/node_modules/elm-test/LICENSE +0 -27
  212. package/generator/dead-code-review/node_modules/elm-test/README.md +0 -192
  213. package/generator/dead-code-review/node_modules/elm-test/bin/elm-test +0 -3
  214. package/generator/dead-code-review/node_modules/elm-test/elm/elm.json +0 -25
  215. package/generator/dead-code-review/node_modules/elm-test/elm/src/Console/Text.elm +0 -217
  216. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format/Color.elm +0 -30
  217. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format/Monochrome.elm +0 -39
  218. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console/Format.elm +0 -212
  219. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Console.elm +0 -207
  220. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Highlightable.elm +0 -48
  221. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/JUnit.elm +0 -161
  222. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Json.elm +0 -158
  223. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/Reporter.elm +0 -53
  224. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Reporter/TestResults.elm +0 -113
  225. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/JsMessage.elm +0 -38
  226. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node/Vendor/Console.elm +0 -230
  227. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node/Vendor/Diff.elm +0 -326
  228. package/generator/dead-code-review/node_modules/elm-test/elm/src/Test/Runner/Node.elm +0 -440
  229. package/generator/dead-code-review/node_modules/elm-test/lib/Compile.js +0 -110
  230. package/generator/dead-code-review/node_modules/elm-test/lib/DependencyProvider.js +0 -343
  231. package/generator/dead-code-review/node_modules/elm-test/lib/ElmCompiler.js +0 -109
  232. package/generator/dead-code-review/node_modules/elm-test/lib/ElmHome.js +0 -47
  233. package/generator/dead-code-review/node_modules/elm-test/lib/ElmJson.js +0 -194
  234. package/generator/dead-code-review/node_modules/elm-test/lib/FindTests.js +0 -276
  235. package/generator/dead-code-review/node_modules/elm-test/lib/Generate.js +0 -294
  236. package/generator/dead-code-review/node_modules/elm-test/lib/Install.js +0 -290
  237. package/generator/dead-code-review/node_modules/elm-test/lib/Parser.js +0 -941
  238. package/generator/dead-code-review/node_modules/elm-test/lib/Project.js +0 -117
  239. package/generator/dead-code-review/node_modules/elm-test/lib/Report.js +0 -23
  240. package/generator/dead-code-review/node_modules/elm-test/lib/RunTests.js +0 -322
  241. package/generator/dead-code-review/node_modules/elm-test/lib/Solve.js +0 -76
  242. package/generator/dead-code-review/node_modules/elm-test/lib/Supervisor.js +0 -294
  243. package/generator/dead-code-review/node_modules/elm-test/lib/SyncGet.js +0 -45
  244. package/generator/dead-code-review/node_modules/elm-test/lib/SyncGetWorker.js +0 -36
  245. package/generator/dead-code-review/node_modules/elm-test/lib/elm-test.js +0 -318
  246. package/generator/dead-code-review/node_modules/elm-test/package.json +0 -69
  247. package/generator/dead-code-review/node_modules/elm-test/templates/after.js +0 -29
  248. package/generator/dead-code-review/node_modules/elm-test/templates/before.js +0 -58
  249. package/generator/dead-code-review/node_modules/elm-test/templates/tests/Example.elm +0 -10
  250. package/generator/dead-code-review/node_modules/fill-range/LICENSE +0 -21
  251. package/generator/dead-code-review/node_modules/fill-range/README.md +0 -237
  252. package/generator/dead-code-review/node_modules/fill-range/index.js +0 -249
  253. package/generator/dead-code-review/node_modules/fill-range/package.json +0 -69
  254. package/generator/dead-code-review/node_modules/fs.realpath/LICENSE +0 -43
  255. package/generator/dead-code-review/node_modules/fs.realpath/README.md +0 -33
  256. package/generator/dead-code-review/node_modules/fs.realpath/index.js +0 -66
  257. package/generator/dead-code-review/node_modules/fs.realpath/old.js +0 -303
  258. package/generator/dead-code-review/node_modules/fs.realpath/package.json +0 -26
  259. package/generator/dead-code-review/node_modules/fsevents/LICENSE +0 -22
  260. package/generator/dead-code-review/node_modules/fsevents/README.md +0 -83
  261. package/generator/dead-code-review/node_modules/fsevents/fsevents.d.ts +0 -46
  262. package/generator/dead-code-review/node_modules/fsevents/fsevents.js +0 -82
  263. package/generator/dead-code-review/node_modules/fsevents/fsevents.node +0 -0
  264. package/generator/dead-code-review/node_modules/fsevents/package.json +0 -62
  265. package/generator/dead-code-review/node_modules/glob/LICENSE +0 -15
  266. package/generator/dead-code-review/node_modules/glob/README.md +0 -378
  267. package/generator/dead-code-review/node_modules/glob/common.js +0 -240
  268. package/generator/dead-code-review/node_modules/glob/glob.js +0 -790
  269. package/generator/dead-code-review/node_modules/glob/package.json +0 -55
  270. package/generator/dead-code-review/node_modules/glob/sync.js +0 -486
  271. package/generator/dead-code-review/node_modules/glob-parent/CHANGELOG.md +0 -110
  272. package/generator/dead-code-review/node_modules/glob-parent/LICENSE +0 -15
  273. package/generator/dead-code-review/node_modules/glob-parent/README.md +0 -137
  274. package/generator/dead-code-review/node_modules/glob-parent/index.js +0 -42
  275. package/generator/dead-code-review/node_modules/glob-parent/package.json +0 -48
  276. package/generator/dead-code-review/node_modules/graceful-fs/LICENSE +0 -15
  277. package/generator/dead-code-review/node_modules/graceful-fs/README.md +0 -143
  278. package/generator/dead-code-review/node_modules/graceful-fs/clone.js +0 -23
  279. package/generator/dead-code-review/node_modules/graceful-fs/graceful-fs.js +0 -448
  280. package/generator/dead-code-review/node_modules/graceful-fs/legacy-streams.js +0 -118
  281. package/generator/dead-code-review/node_modules/graceful-fs/package.json +0 -50
  282. package/generator/dead-code-review/node_modules/graceful-fs/polyfills.js +0 -355
  283. package/generator/dead-code-review/node_modules/has-flag/index.d.ts +0 -39
  284. package/generator/dead-code-review/node_modules/has-flag/index.js +0 -8
  285. package/generator/dead-code-review/node_modules/has-flag/license +0 -9
  286. package/generator/dead-code-review/node_modules/has-flag/package.json +0 -46
  287. package/generator/dead-code-review/node_modules/has-flag/readme.md +0 -89
  288. package/generator/dead-code-review/node_modules/inflight/LICENSE +0 -15
  289. package/generator/dead-code-review/node_modules/inflight/README.md +0 -37
  290. package/generator/dead-code-review/node_modules/inflight/inflight.js +0 -54
  291. package/generator/dead-code-review/node_modules/inflight/package.json +0 -29
  292. package/generator/dead-code-review/node_modules/inherits/LICENSE +0 -16
  293. package/generator/dead-code-review/node_modules/inherits/README.md +0 -42
  294. package/generator/dead-code-review/node_modules/inherits/inherits.js +0 -9
  295. package/generator/dead-code-review/node_modules/inherits/inherits_browser.js +0 -27
  296. package/generator/dead-code-review/node_modules/inherits/package.json +0 -29
  297. package/generator/dead-code-review/node_modules/is-binary-path/index.d.ts +0 -17
  298. package/generator/dead-code-review/node_modules/is-binary-path/index.js +0 -7
  299. package/generator/dead-code-review/node_modules/is-binary-path/license +0 -9
  300. package/generator/dead-code-review/node_modules/is-binary-path/package.json +0 -40
  301. package/generator/dead-code-review/node_modules/is-binary-path/readme.md +0 -34
  302. package/generator/dead-code-review/node_modules/is-extglob/LICENSE +0 -21
  303. package/generator/dead-code-review/node_modules/is-extglob/README.md +0 -107
  304. package/generator/dead-code-review/node_modules/is-extglob/index.js +0 -20
  305. package/generator/dead-code-review/node_modules/is-extglob/package.json +0 -69
  306. package/generator/dead-code-review/node_modules/is-glob/LICENSE +0 -21
  307. package/generator/dead-code-review/node_modules/is-glob/README.md +0 -206
  308. package/generator/dead-code-review/node_modules/is-glob/index.js +0 -150
  309. package/generator/dead-code-review/node_modules/is-glob/package.json +0 -81
  310. package/generator/dead-code-review/node_modules/is-number/LICENSE +0 -21
  311. package/generator/dead-code-review/node_modules/is-number/README.md +0 -187
  312. package/generator/dead-code-review/node_modules/is-number/index.js +0 -18
  313. package/generator/dead-code-review/node_modules/is-number/package.json +0 -82
  314. package/generator/dead-code-review/node_modules/isexe/LICENSE +0 -15
  315. package/generator/dead-code-review/node_modules/isexe/README.md +0 -51
  316. package/generator/dead-code-review/node_modules/isexe/index.js +0 -57
  317. package/generator/dead-code-review/node_modules/isexe/mode.js +0 -41
  318. package/generator/dead-code-review/node_modules/isexe/package.json +0 -31
  319. package/generator/dead-code-review/node_modules/isexe/test/basic.js +0 -221
  320. package/generator/dead-code-review/node_modules/isexe/windows.js +0 -42
  321. package/generator/dead-code-review/node_modules/minimatch/LICENSE +0 -15
  322. package/generator/dead-code-review/node_modules/minimatch/README.md +0 -259
  323. package/generator/dead-code-review/node_modules/minimatch/lib/path.js +0 -4
  324. package/generator/dead-code-review/node_modules/minimatch/minimatch.js +0 -906
  325. package/generator/dead-code-review/node_modules/minimatch/package.json +0 -32
  326. package/generator/dead-code-review/node_modules/normalize-path/LICENSE +0 -21
  327. package/generator/dead-code-review/node_modules/normalize-path/README.md +0 -127
  328. package/generator/dead-code-review/node_modules/normalize-path/index.js +0 -35
  329. package/generator/dead-code-review/node_modules/normalize-path/package.json +0 -77
  330. package/generator/dead-code-review/node_modules/once/LICENSE +0 -15
  331. package/generator/dead-code-review/node_modules/once/README.md +0 -79
  332. package/generator/dead-code-review/node_modules/once/once.js +0 -42
  333. package/generator/dead-code-review/node_modules/once/package.json +0 -33
  334. package/generator/dead-code-review/node_modules/path-key/index.d.ts +0 -40
  335. package/generator/dead-code-review/node_modules/path-key/index.js +0 -16
  336. package/generator/dead-code-review/node_modules/path-key/license +0 -9
  337. package/generator/dead-code-review/node_modules/path-key/package.json +0 -39
  338. package/generator/dead-code-review/node_modules/path-key/readme.md +0 -61
  339. package/generator/dead-code-review/node_modules/picomatch/CHANGELOG.md +0 -136
  340. package/generator/dead-code-review/node_modules/picomatch/LICENSE +0 -21
  341. package/generator/dead-code-review/node_modules/picomatch/README.md +0 -708
  342. package/generator/dead-code-review/node_modules/picomatch/index.js +0 -3
  343. package/generator/dead-code-review/node_modules/picomatch/lib/constants.js +0 -179
  344. package/generator/dead-code-review/node_modules/picomatch/lib/parse.js +0 -1091
  345. package/generator/dead-code-review/node_modules/picomatch/lib/picomatch.js +0 -342
  346. package/generator/dead-code-review/node_modules/picomatch/lib/scan.js +0 -391
  347. package/generator/dead-code-review/node_modules/picomatch/lib/utils.js +0 -64
  348. package/generator/dead-code-review/node_modules/picomatch/package.json +0 -81
  349. package/generator/dead-code-review/node_modules/readdirp/LICENSE +0 -21
  350. package/generator/dead-code-review/node_modules/readdirp/README.md +0 -122
  351. package/generator/dead-code-review/node_modules/readdirp/index.d.ts +0 -43
  352. package/generator/dead-code-review/node_modules/readdirp/index.js +0 -287
  353. package/generator/dead-code-review/node_modules/readdirp/package.json +0 -122
  354. package/generator/dead-code-review/node_modules/shebang-command/index.js +0 -19
  355. package/generator/dead-code-review/node_modules/shebang-command/license +0 -9
  356. package/generator/dead-code-review/node_modules/shebang-command/package.json +0 -34
  357. package/generator/dead-code-review/node_modules/shebang-command/readme.md +0 -34
  358. package/generator/dead-code-review/node_modules/shebang-regex/index.d.ts +0 -22
  359. package/generator/dead-code-review/node_modules/shebang-regex/index.js +0 -2
  360. package/generator/dead-code-review/node_modules/shebang-regex/license +0 -9
  361. package/generator/dead-code-review/node_modules/shebang-regex/package.json +0 -35
  362. package/generator/dead-code-review/node_modules/shebang-regex/readme.md +0 -33
  363. package/generator/dead-code-review/node_modules/split/.travis.yml +0 -3
  364. package/generator/dead-code-review/node_modules/split/LICENCE +0 -22
  365. package/generator/dead-code-review/node_modules/split/examples/pretty.js +0 -26
  366. package/generator/dead-code-review/node_modules/split/index.js +0 -63
  367. package/generator/dead-code-review/node_modules/split/package.json +0 -30
  368. package/generator/dead-code-review/node_modules/split/readme.markdown +0 -72
  369. package/generator/dead-code-review/node_modules/split/test/options.asynct.js +0 -46
  370. package/generator/dead-code-review/node_modules/split/test/partitioned_unicode.js +0 -34
  371. package/generator/dead-code-review/node_modules/split/test/split.asynct.js +0 -137
  372. package/generator/dead-code-review/node_modules/split/test/try_catch.asynct.js +0 -51
  373. package/generator/dead-code-review/node_modules/supports-color/browser.js +0 -5
  374. package/generator/dead-code-review/node_modules/supports-color/index.js +0 -135
  375. package/generator/dead-code-review/node_modules/supports-color/license +0 -9
  376. package/generator/dead-code-review/node_modules/supports-color/package.json +0 -53
  377. package/generator/dead-code-review/node_modules/supports-color/readme.md +0 -76
  378. package/generator/dead-code-review/node_modules/through/.travis.yml +0 -5
  379. package/generator/dead-code-review/node_modules/through/LICENSE.APACHE2 +0 -15
  380. package/generator/dead-code-review/node_modules/through/LICENSE.MIT +0 -24
  381. package/generator/dead-code-review/node_modules/through/index.js +0 -108
  382. package/generator/dead-code-review/node_modules/through/package.json +0 -36
  383. package/generator/dead-code-review/node_modules/through/readme.markdown +0 -64
  384. package/generator/dead-code-review/node_modules/through/test/async.js +0 -28
  385. package/generator/dead-code-review/node_modules/through/test/auto-destroy.js +0 -30
  386. package/generator/dead-code-review/node_modules/through/test/buffering.js +0 -71
  387. package/generator/dead-code-review/node_modules/through/test/end.js +0 -45
  388. package/generator/dead-code-review/node_modules/through/test/index.js +0 -133
  389. package/generator/dead-code-review/node_modules/to-regex-range/LICENSE +0 -21
  390. package/generator/dead-code-review/node_modules/to-regex-range/README.md +0 -305
  391. package/generator/dead-code-review/node_modules/to-regex-range/index.js +0 -288
  392. package/generator/dead-code-review/node_modules/to-regex-range/package.json +0 -88
  393. package/generator/dead-code-review/node_modules/which/CHANGELOG.md +0 -166
  394. package/generator/dead-code-review/node_modules/which/LICENSE +0 -15
  395. package/generator/dead-code-review/node_modules/which/README.md +0 -54
  396. package/generator/dead-code-review/node_modules/which/bin/node-which +0 -52
  397. package/generator/dead-code-review/node_modules/which/package.json +0 -43
  398. package/generator/dead-code-review/node_modules/which/which.js +0 -125
  399. package/generator/dead-code-review/node_modules/wrappy/LICENSE +0 -15
  400. package/generator/dead-code-review/node_modules/wrappy/README.md +0 -36
  401. package/generator/dead-code-review/node_modules/wrappy/package.json +0 -29
  402. package/generator/dead-code-review/node_modules/wrappy/wrappy.js +0 -33
  403. package/generator/dead-code-review/node_modules/xmlbuilder/.nycrc +0 -6
  404. package/generator/dead-code-review/node_modules/xmlbuilder/.vscode/launch.json +0 -23
  405. package/generator/dead-code-review/node_modules/xmlbuilder/CHANGELOG.md +0 -593
  406. package/generator/dead-code-review/node_modules/xmlbuilder/LICENSE +0 -21
  407. package/generator/dead-code-review/node_modules/xmlbuilder/README.md +0 -103
  408. package/generator/dead-code-review/node_modules/xmlbuilder/lib/Derivation.js +0 -10
  409. package/generator/dead-code-review/node_modules/xmlbuilder/lib/DocumentPosition.js +0 -12
  410. package/generator/dead-code-review/node_modules/xmlbuilder/lib/NodeType.js +0 -25
  411. package/generator/dead-code-review/node_modules/xmlbuilder/lib/OperationType.js +0 -11
  412. package/generator/dead-code-review/node_modules/xmlbuilder/lib/Utility.js +0 -88
  413. package/generator/dead-code-review/node_modules/xmlbuilder/lib/WriterState.js +0 -10
  414. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLAttribute.js +0 -130
  415. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLCData.js +0 -41
  416. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLCharacterData.js +0 -86
  417. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLComment.js +0 -41
  418. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMConfiguration.js +0 -80
  419. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMErrorHandler.js +0 -20
  420. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMImplementation.js +0 -55
  421. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDOMStringList.js +0 -44
  422. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDAttList.js +0 -66
  423. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDElement.js +0 -44
  424. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDEntity.js +0 -115
  425. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDTDNotation.js +0 -66
  426. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDeclaration.js +0 -51
  427. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocType.js +0 -235
  428. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocument.js +0 -282
  429. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocumentCB.js +0 -650
  430. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDocumentFragment.js +0 -21
  431. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLDummy.js +0 -39
  432. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLElement.js +0 -334
  433. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNamedNodeMap.js +0 -77
  434. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNode.js +0 -999
  435. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNodeFilter.js +0 -51
  436. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLNodeList.js +0 -45
  437. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLProcessingInstruction.js +0 -56
  438. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLRaw.js +0 -40
  439. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStreamWriter.js +0 -209
  440. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStringWriter.js +0 -40
  441. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLStringifier.js +0 -291
  442. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLText.js +0 -82
  443. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLTypeInfo.js +0 -23
  444. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLUserDataHandler.js +0 -27
  445. package/generator/dead-code-review/node_modules/xmlbuilder/lib/XMLWriterBase.js +0 -485
  446. package/generator/dead-code-review/node_modules/xmlbuilder/lib/index.js +0 -120
  447. package/generator/dead-code-review/node_modules/xmlbuilder/package.json +0 -51
  448. package/generator/dead-code-review/node_modules/xmlbuilder/perf/basic/escaping.coffee +0 -244
  449. package/generator/dead-code-review/node_modules/xmlbuilder/perf/basic/object.coffee +0 -21
  450. package/generator/dead-code-review/node_modules/xmlbuilder/perf/index.coffee +0 -161
  451. package/generator/dead-code-review/node_modules/xmlbuilder/perf/perf.list +0 -11
  452. package/generator/dead-code-review/node_modules/xmlbuilder/typings/index.d.ts +0 -1771
  453. package/generator/review/elm-stuff/0.19.1/d.dat +0 -0
  454. package/generator/review/elm-stuff/0.19.1/i.dat +0 -0
  455. package/generator/review/elm-stuff/0.19.1/o.dat +0 -0
  456. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm-stuff/0.19.1/d.dat +0 -0
  457. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm-stuff/0.19.1/i.dat +0 -0
  458. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm-stuff/0.19.1/o.dat +0 -0
  459. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision10/install/elm.json +0 -25
  460. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm-stuff/0.19.1/d.dat +0 -0
  461. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm-stuff/0.19.1/i.dat +0 -0
  462. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm-stuff/0.19.1/o.dat +0 -0
  463. package/generator/review/elm-stuff/generated-code/elm-community/elm-test/0.19.1-revision7/install/elm.json +0 -41
  464. package/src/DataSource/Env.elm +0 -62
  465. package/src/DataSource/Http.elm +0 -446
  466. package/src/DataSource/Internal/Request.elm +0 -20
  467. package/src/DataSource/Port.elm +0 -90
  468. package/src/MultiDict.elm +0 -49
  469. package/src/PairingHeap.elm +0 -137
  470. package/src/Parser/Extra/String.elm +0 -33
  471. package/src/Parser/Extra.elm +0 -69
  472. package/src/ProgramTest/ComplexQuery.elm +0 -360
  473. package/src/ProgramTest/EffectSimulation.elm +0 -122
  474. package/src/ProgramTest/Failure.elm +0 -367
  475. package/src/ProgramTest/HtmlHighlighter.elm +0 -116
  476. package/src/ProgramTest/HtmlParserHacks.elm +0 -58
  477. package/src/ProgramTest/HtmlRenderer.elm +0 -73
  478. package/src/ProgramTest/Program.elm +0 -30
  479. package/src/ProgramTest/StringLines.elm +0 -26
  480. package/src/ProgramTest/TestHtmlHacks.elm +0 -132
  481. package/src/ProgramTest/TestHtmlParser.elm +0 -201
  482. package/src/ProgramTest.elm +0 -2339
  483. package/src/Query/Extra.elm +0 -55
  484. package/src/SimulatedEffect/Cmd.elm +0 -69
  485. package/src/SimulatedEffect/Http.elm +0 -330
  486. package/src/SimulatedEffect/Navigation.elm +0 -69
  487. package/src/SimulatedEffect/Ports.elm +0 -62
  488. package/src/SimulatedEffect/Process.elm +0 -24
  489. package/src/SimulatedEffect/Sub.elm +0 -48
  490. package/src/SimulatedEffect/Task.elm +0 -252
  491. package/src/SimulatedEffect/Time.elm +0 -25
  492. package/src/SimulatedEffect.elm +0 -42
  493. package/src/String/Extra.elm +0 -6
  494. package/src/Test/Http.elm +0 -145
  495. package/src/TestResult.elm +0 -35
  496. package/src/TestState.elm +0 -305
  497. package/src/Url/Extra.elm +0 -100
  498. package/src/Vendored/Diff.elm +0 -321
  499. package/src/Vendored/Failure.elm +0 -217
  500. package/src/Vendored/FormatMonochrome.elm +0 -44
  501. package/src/Vendored/Highlightable.elm +0 -53
@@ -1,294 +0,0 @@
1
- // @flow
2
-
3
- const chalk = require('chalk');
4
- const child_process = require('child_process');
5
- const fs = require('fs');
6
- const net = require('net');
7
- const split = require('split');
8
- const XmlBuilder = require('xmlbuilder');
9
- const Report = require('./Report');
10
-
11
- function run(
12
- elmTestVersion /*: string */,
13
- pipeFilename /*: string */,
14
- report /*: typeof Report.Report */,
15
- processes /*: number */,
16
- dest /*: string */,
17
- watch /*: boolean */
18
- ) /*: Promise<number> */ {
19
- return new Promise(function (resolve) {
20
- var nextResultToPrint = null;
21
- var finishedWorkers = 0;
22
- var closedWorkers = 0;
23
- var results = new Map();
24
- var failures = 0;
25
- var todos = [];
26
- var testsToRun = -1;
27
- var initializedWorkers = -1;
28
- var startingTime = Date.now();
29
- var workers = [];
30
-
31
- function printResult(result) {
32
- switch (report) {
33
- case 'console':
34
- // todos are objects, and will be shown in the SUMMARY only.
35
- // passed tests are nulls, and should not be printed.
36
- // failed tests are strings.
37
- if (typeof result === 'string') {
38
- console.log(makeWindowsSafe(result));
39
- }
40
- break;
41
-
42
- case 'json':
43
- console.log(JSON.stringify(result));
44
- break;
45
-
46
- case 'junit':
47
- // JUnit does everything at once in SUMMARY, elsewhere
48
- break;
49
- }
50
- }
51
-
52
- function flushResults() {
53
- // Only print any results if we're ready - that is, nextResultToPrint
54
- // is no longer null. (BEGIN changes it from null to 0.)
55
- if (nextResultToPrint !== null) {
56
- var result = results.get(nextResultToPrint);
57
-
58
- while (
59
- // If there are no more results to print, then we're done.
60
- nextResultToPrint < testsToRun &&
61
- // Otherwise, keep going until we have no result available to print.
62
- typeof result !== 'undefined'
63
- ) {
64
- printResult(result);
65
- nextResultToPrint++;
66
- result = results.get(nextResultToPrint);
67
- }
68
- }
69
- }
70
- function reportRuntimeException() {
71
- console.error(
72
- chalk.red(
73
- '\n\nThere was an unexpected runtime exception while running tests\n\n'
74
- )
75
- );
76
- }
77
-
78
- function handleResults(response) {
79
- // TODO print progress bar - e.g. "Running test 5 of 20" on a bar!
80
- // -- yikes, be careful though...test the scenario where test
81
- // authors put Debug.log in their tests - does that mess
82
- // everything up re: the line feed? Seems like it would...
83
- // ...so maybe a bar is not best. Can we do better? Hm.
84
- // Maybe the answer is to print the thing, then Immediately
85
- // backtrack the line feed, so that if someone else does more
86
- // logging, it will overwrite our status update and that's ok?
87
-
88
- Object.keys(response.results).forEach(function (index) {
89
- var result = response.results[index];
90
- results.set(parseInt(index), result);
91
-
92
- switch (report) {
93
- case 'console':
94
- if (result === null) {
95
- // It's a PASS; no need to take any action.
96
- } else if (typeof result.todo !== 'undefined') {
97
- todos.push(result);
98
- } else {
99
- failures++;
100
- }
101
- break;
102
- case 'junit':
103
- if (typeof result.failure !== 'undefined') {
104
- failures++;
105
- }
106
- break;
107
- case 'json':
108
- if (result.status === 'fail') {
109
- failures++;
110
- } else if (result.status === 'todo') {
111
- todos.push({ labels: result.labels, todo: result.failures[0] });
112
- }
113
- break;
114
- }
115
- });
116
-
117
- flushResults();
118
- }
119
-
120
- function initWorker(socket) {
121
- socket.setEncoding('utf8');
122
- socket.setNoDelay(true);
123
-
124
- // See the long note near client.write() in worker.js for why we do this.
125
- // It fixes a nasty bug!
126
- var stream = socket.pipe(split());
127
-
128
- stream.on('data', function (data) {
129
- // In watch mode, the socket is drained which results in an extraneous
130
- // message being sent. If we receive no data, ignore it.
131
- if (!data) {
132
- return;
133
- }
134
-
135
- var response = JSON.parse(data);
136
-
137
- switch (response.type) {
138
- case 'FINISHED':
139
- handleResults(response);
140
-
141
- // This worker found no tests remaining to run; it's finished!
142
- finishedWorkers++;
143
-
144
- // If all the workers have finished, print the summmary.
145
- if (finishedWorkers === workers.length) {
146
- socket.write(
147
- JSON.stringify({
148
- type: 'SUMMARY',
149
- duration: Date.now() - startingTime,
150
- failures: failures,
151
- todos: todos,
152
- })
153
- );
154
- }
155
- break;
156
- case 'SUMMARY':
157
- flushResults();
158
-
159
- if (response.exitCode === 1) {
160
- // The tests could not even run. At the time of this writing, the
161
- // only case is “No exposed values of type Test found”. That
162
- // _could_ have been caught at compile time, but the current
163
- // architecture needs to actually run the JS to figure out which
164
- // exposed values are of type Test. That’s why this type of
165
- // response is handled differently than others.
166
- console.error(response.message);
167
- } else {
168
- printResult(response.message);
169
-
170
- if (report === 'junit') {
171
- var xml = response.message;
172
- var values = Array.from(results.values());
173
-
174
- xml.testsuite.testcase = xml.testsuite.testcase.concat(values);
175
-
176
- console.log(XmlBuilder.create(xml).end());
177
- }
178
- }
179
-
180
- // Close all the workers.
181
- workers.forEach(function (worker) {
182
- worker.kill();
183
- });
184
- resolve(response.exitCode);
185
- break;
186
- case 'BEGIN':
187
- testsToRun = response.testCount;
188
-
189
- if (!Report.isMachineReadable(report)) {
190
- var headline = 'elm-test ' + elmTestVersion;
191
- var bar = '-'.repeat(headline.length);
192
-
193
- console.log('\n' + headline + '\n' + bar + '\n');
194
- }
195
-
196
- printResult(response.message);
197
-
198
- // Now we're ready to print results!
199
- nextResultToPrint = 0;
200
-
201
- flushResults();
202
-
203
- break;
204
- case 'RESULTS':
205
- handleResults(response);
206
-
207
- break;
208
- case 'ERROR':
209
- throw new Error(response.message);
210
- default:
211
- throw new Error(
212
- 'Unrecognized message from worker:' + response.type
213
- );
214
- }
215
- });
216
-
217
- socket.write(JSON.stringify({ type: 'TEST', index: initializedWorkers }));
218
-
219
- initializedWorkers++;
220
- }
221
-
222
- var pendingException = false,
223
- server = net.createServer(initWorker);
224
-
225
- server.on('error', function (err) {
226
- console.error(err.stack);
227
- server.close();
228
- });
229
-
230
- server.on('listening', function () {
231
- workers = Array.from({ length: processes }).map(() => {
232
- var worker = child_process.fork(dest);
233
-
234
- worker.on('close', function (code) {
235
- // code can be null.
236
- var hasNonZeroExitCode = typeof code === 'number' && code !== 0;
237
-
238
- if (watch && !Report.isMachineReadable(report)) {
239
- if (hasNonZeroExitCode) {
240
- // Queue up complaining about an exception.
241
- // Don't print it immediately, or else it might print N times
242
- // where N is the number of cores.
243
- pendingException = true;
244
- }
245
- closedWorkers++;
246
- // If all the workers have closed, we're done! Continue watching.
247
- if (closedWorkers === workers.length) {
248
- if (pendingException) {
249
- // If we had an exception pending, print it and clear pending flag.
250
- reportRuntimeException();
251
- pendingException = false;
252
- }
253
- resolve(1);
254
- }
255
- } else if (hasNonZeroExitCode) {
256
- reportRuntimeException();
257
- resolve(1);
258
- }
259
- });
260
-
261
- return worker;
262
- });
263
- });
264
-
265
- if (fs.existsSync(pipeFilename) && process.platform !== 'win32') {
266
- // Never remove named pipes on Windows. The OS will clean them up when
267
- // nothing has a handle to them anymore.
268
- fs.unlinkSync(pipeFilename);
269
- }
270
-
271
- server.listen(pipeFilename);
272
- });
273
- }
274
-
275
- function makeWindowsSafe(text) {
276
- return process.platform === 'win32' ? windowsify(text) : text;
277
- }
278
-
279
- // Fix Windows Unicode problems. Credit to https://github.com/sindresorhus/figures for the Windows compat idea!
280
- var windowsSubstitutions = [
281
- [/[↓✗►]/g, '>'],
282
- [/╵│╷╹┃╻/g, '|'],
283
- [/═/g, '='],
284
- [/▔/g, '-'],
285
- [/✔/g, '√'],
286
- ];
287
-
288
- function windowsify(str) {
289
- return windowsSubstitutions.reduce(function (result /*: string */, sub) {
290
- return result.replace(sub[0], sub[1]);
291
- }, str);
292
- }
293
-
294
- module.exports = { run: run };
@@ -1,45 +0,0 @@
1
- // @flow
2
-
3
- const path = require('path');
4
- const {
5
- Worker,
6
- MessageChannel,
7
- receiveMessageOnPort,
8
- // $FlowFixMe[cannot-resolve-module]: Flow doesn’t seem to know about the `worker_threads` module yet.
9
- } = require('worker_threads');
10
-
11
- // Start a worker thread and return a `syncGetWorker`
12
- // capable of making sync requests until shut down.
13
- function startWorker() /*: {
14
- get: (string) => string,
15
- shutDown: () => void,
16
- } */ {
17
- const { port1: localPort, port2: workerPort } = new MessageChannel();
18
- const sharedLock = new SharedArrayBuffer(4);
19
- // $FlowFixMe[incompatible-call]: Flow is wrong and says `sharedLock` is not an accepted parameter here.
20
- const sharedLockArray = new Int32Array(sharedLock);
21
- const workerPath = path.resolve(__dirname, 'SyncGetWorker.js');
22
- const worker = new Worker(workerPath, {
23
- workerData: { sharedLock, requestPort: workerPort },
24
- transferList: [workerPort],
25
- });
26
- function get(url) {
27
- worker.postMessage(url);
28
- Atomics.wait(sharedLockArray, 0, 0); // blocks until notified at index 0.
29
- const response = receiveMessageOnPort(localPort);
30
- if (response.message.error) {
31
- throw response.message.error;
32
- } else {
33
- return response.message;
34
- }
35
- }
36
- function shutDown() {
37
- localPort.close();
38
- worker.terminate();
39
- }
40
- return { get, shutDown };
41
- }
42
-
43
- module.exports = {
44
- startWorker,
45
- };
@@ -1,36 +0,0 @@
1
- // @flow
2
-
3
- // $FlowFixMe[cannot-resolve-module]: Flow doesn’t seem to know about the `worker_threads` module yet.
4
- const { parentPort, workerData } = require('worker_threads');
5
- const https = require('https');
6
-
7
- const { sharedLock, requestPort } = workerData;
8
- const sharedLockArray = new Int32Array(sharedLock);
9
-
10
- parentPort.on('message', async (url) => {
11
- try {
12
- const response = await getBody(url);
13
- requestPort.postMessage(response);
14
- } catch (error) {
15
- requestPort.postMessage({ error });
16
- }
17
- Atomics.notify(sharedLockArray, 0, Infinity);
18
- });
19
-
20
- async function getBody(url /*: string */) /*: Promise<string> */ {
21
- return new Promise(function (resolve, reject) {
22
- https
23
- .get(url, function (res) {
24
- let body = '';
25
- res.on('data', function (chunk) {
26
- body += chunk;
27
- });
28
- res.on('end', function () {
29
- resolve(body);
30
- });
31
- })
32
- .on('error', function (err) {
33
- reject(err);
34
- });
35
- });
36
- }
@@ -1,318 +0,0 @@
1
- // @flow
2
-
3
- const { InvalidOptionArgumentError, Option, program } = require('commander');
4
- const fs = require('fs');
5
- const os = require('os');
6
- const path = require('path');
7
- const which = require('which');
8
- const packageInfo = require('../package.json');
9
- const Compile = require('./Compile');
10
- const DependencyProvider = require('./DependencyProvider.js');
11
- const ElmJson = require('./ElmJson');
12
- const FindTests = require('./FindTests');
13
- const Generate = require('./Generate');
14
- const Install = require('./Install');
15
- const Project = require('./Project');
16
- const Report = require('./Report');
17
- const RunTests = require('./RunTests');
18
-
19
- void Report;
20
-
21
- const parsePositiveInteger =
22
- (minimum /*: number */) =>
23
- (string /*: string */) /*: number */ => {
24
- const number = Number(string);
25
- if (!/^\d+$/.test(string)) {
26
- throw new InvalidOptionArgumentError('Expected one or more digits.');
27
- } else if (!Number.isFinite(number)) {
28
- throw new InvalidOptionArgumentError('Expected a finite number.');
29
- } else if (number < minimum) {
30
- throw new InvalidOptionArgumentError(`Expected at least ${minimum}.`);
31
- } else {
32
- return number;
33
- }
34
- };
35
-
36
- function findClosestElmJson(dir /*: string */) /*: string | void */ {
37
- const entry = ElmJson.getPath(dir);
38
- return fs.existsSync(entry)
39
- ? entry
40
- : dir === path.parse(dir).root
41
- ? undefined
42
- : findClosestElmJson(path.dirname(dir));
43
- }
44
-
45
- function getProjectRootDir(subcommand /*: string */) /*: string */ {
46
- const elmJsonPath = findClosestElmJson(process.cwd());
47
- if (elmJsonPath === undefined) {
48
- const command =
49
- subcommand === 'tests' ? 'elm-test' : `elm-test ${subcommand}`;
50
- console.error(
51
- `\`${command}\` requires an elm.json up the directory tree, but none could be found! To make one: elm init`
52
- );
53
- throw process.exit(1);
54
- }
55
- return path.dirname(elmJsonPath);
56
- }
57
-
58
- function getProject(subcommand /*: string */) /*: typeof Project.Project */ {
59
- try {
60
- return Project.init(getProjectRootDir(subcommand), packageInfo.version);
61
- } catch (error) {
62
- console.error(error.message);
63
- throw process.exit(1);
64
- }
65
- }
66
-
67
- function getPathToElmBinary(compiler /*: string | void */) /*: string */ {
68
- const name = compiler === undefined ? 'elm' : compiler;
69
- try {
70
- return path.resolve(which.sync(name));
71
- } catch (_error) {
72
- console.error(
73
- compiler === undefined
74
- ? `Cannot find elm executable, make sure it is installed.
75
- (If elm is not on your path or is called something different the --compiler flag might help.)`
76
- : `The elm executable passed to --compiler must exist and be exectuble. Got: ${compiler}`
77
- );
78
- throw process.exit(1);
79
- }
80
- }
81
-
82
- function outputOptionError() {
83
- return `
84
- Only /dev/null is allowed.
85
-
86
- NOTE: Including this option will not have any effect, as \`elm-test\` does not
87
- produce any output files. It is meant to improve compatibility with editor
88
- plugins explicitly setting the --output flag to /dev/null when using
89
- \`elm-test make\` as a drop-in replacement for \`elm make\`.'
90
- `.trim();
91
- }
92
-
93
- const examples = `
94
- elm-test
95
- Run tests in the tests/ folder
96
-
97
- elm-test "src/**/*Tests.elm"
98
- Run tests in files matching the glob
99
- `.trim();
100
-
101
- function main() {
102
- const dependencyProvider = new DependencyProvider();
103
-
104
- process.title = 'elm-test';
105
-
106
- program
107
- .allowExcessArguments(false)
108
- .name('elm-test')
109
- .usage('[options] [globs...]')
110
- .description(examples)
111
- .option('--watch', 'Run tests on file changes', false)
112
- // For example `--seed` and `--fuzz` only make sense for the “tests” command
113
- // and could be specified for that command only, but then they won’t show up
114
- // in `--help`.
115
- .addOption(
116
- new Option('--seed <int>', 'Run with a specific fuzzer seed')
117
- .default(Math.floor(Math.random() * 407199254740991) + 1000, 'random')
118
- .argParser(parsePositiveInteger(0))
119
- )
120
- .option(
121
- '--fuzz <int>',
122
- 'Define how many times each fuzz-test should run',
123
- parsePositiveInteger(1),
124
- 100
125
- )
126
- .addOption(
127
- new Option(
128
- '--report <format>',
129
- 'Specify which format to use for reporting test results'
130
- )
131
- .default('console')
132
- .choices(Report.all)
133
- )
134
- // `chalk.supportsColor` looks at `process.argv` for these flags.
135
- // We still need to define them so they appear in `--help` and aren’t
136
- // treated as unknown flags.
137
- .option(
138
- '--no-color',
139
- 'Disable colored console output (setting FORCE_COLOR=0 also works)'
140
- )
141
- .option(
142
- '--color',
143
- 'Force colored console output (setting FORCE_COLOR to anything but 0 also works)'
144
- )
145
- .option(
146
- '--compiler <path>',
147
- 'Use a custom path to an Elm executable (default: elm)',
148
- undefined
149
- )
150
- // Ensure compatibility with editor plugins setting --output=/dev/null when
151
- // running `make`. This has caused issues with Emacs' flycheck-elm package.
152
- .addOption(
153
- new Option('--output <output>')
154
- .argParser((value) => {
155
- if (value !== '/dev/null') {
156
- throw new InvalidOptionArgumentError(outputOptionError());
157
- }
158
- })
159
- .hideHelp()
160
- )
161
- .version(packageInfo.version, '--version', 'Print version and exit')
162
- .helpOption('-h, --help', 'Show help')
163
- .addHelpCommand('help [command]', 'Show help');
164
-
165
- program
166
- .command('init')
167
- .description('Install elm-explorations/test and create tests/Example.elm')
168
- .action(() => {
169
- const options = program.opts();
170
- const pathToElmBinary = getPathToElmBinary(options.compiler);
171
- const project = getProject('init');
172
- try {
173
- Install.install(project, pathToElmBinary, 'elm-explorations/test');
174
- fs.mkdirSync(project.testsDir, { recursive: true });
175
- fs.copyFileSync(
176
- path.join(__dirname, '..', 'templates', 'tests', 'Example.elm'),
177
- path.join(project.testsDir, 'Example.elm')
178
- );
179
- } catch (error) {
180
- console.error(error.message);
181
- throw process.exit(1);
182
- }
183
- console.log(
184
- '\nCheck out the documentation for getting started at https://package.elm-lang.org/packages/elm-explorations/test/latest'
185
- );
186
- process.exit(0);
187
- });
188
-
189
- program
190
- .command('install <package>')
191
- .description(
192
- 'Like `elm install package`, except it installs to "test-dependencies" in your elm.json'
193
- )
194
- .action((packageName) => {
195
- const options = program.opts();
196
- const pathToElmBinary = getPathToElmBinary(options.compiler);
197
- const project = getProject('install');
198
- try {
199
- const result = Install.install(project, pathToElmBinary, packageName);
200
- // This mirrors the behavior of `elm install` passing a package that is
201
- // already installed. Say it's already installed, then exit 0.
202
- if (result === 'AlreadyInstalled') {
203
- console.log('It is already installed!');
204
- }
205
- process.exit(0);
206
- } catch (error) {
207
- console.error(error.message);
208
- process.exit(1);
209
- }
210
- });
211
-
212
- program
213
- .command('make [globs...]')
214
- .description('Check files matching the globs for compilation errors')
215
- .action((testFileGlobs) => {
216
- const options = program.opts();
217
- const pathToElmBinary = getPathToElmBinary(options.compiler);
218
- const project = getProject('make');
219
- const make = async () => {
220
- Generate.generateElmJson(dependencyProvider, project);
221
- await Compile.compileSources(
222
- FindTests.resolveGlobs(
223
- testFileGlobs.length === 0 ? [project.testsDir] : testFileGlobs,
224
- project.rootDir
225
- ),
226
- project.generatedCodeDir,
227
- pathToElmBinary,
228
- options.report
229
- );
230
- };
231
- make().then(
232
- () => process.exit(0),
233
- // `elm-test make` has never logged errors it seems.
234
- () => process.exit(1)
235
- );
236
- });
237
-
238
- program
239
- // Hack: This command has a name that isn’t likely to exist as a directory
240
- // containing tests. If the command were instead called "tests" then
241
- // commander would interpret the `tests` in `elm-test tests src` as a
242
- // command and only run tests in `src/`, ignoring all files in `tests/`.
243
- .command('__elmTestCommand__ [globs...]', { hidden: true, isDefault: true })
244
- .action((testFileGlobs) => {
245
- const options = program.opts();
246
- const pathToElmBinary = getPathToElmBinary(options.compiler);
247
- const projectRootDir = getProjectRootDir('tests');
248
- const processes = Math.max(1, os.cpus().length);
249
- RunTests.runTests(
250
- dependencyProvider,
251
- projectRootDir,
252
- pathToElmBinary,
253
- testFileGlobs,
254
- processes,
255
- options
256
- ).then(
257
- (code) => process.exit(code),
258
- (error) => {
259
- console.error(error.message);
260
- process.exit(1);
261
- }
262
- );
263
- });
264
-
265
- program
266
- .command('install-unstable-test-master')
267
- .description(
268
- 'Use the `master` version of the elm-explorations/test library'
269
- )
270
- .action(() => {
271
- const project = getProject('install-unstable-test-master');
272
- Install.installUnstableTestMaster(project).then(
273
- () => process.exit(0),
274
- (error) => {
275
- console.error(error.message);
276
- process.exit(1);
277
- }
278
- );
279
- });
280
-
281
- program
282
- .command('uninstall-unstable-test-master')
283
- .description(
284
- 'Stop using the `master` version of the elm-explorations/test library'
285
- )
286
- .action(() => {
287
- const options = program.opts();
288
- const pathToElmBinary = getPathToElmBinary(options.compiler);
289
- const project = getProject('uninstall-unstable-test-master');
290
- const run = async () => {
291
- Install.uninstallUnstableTestMaster(project);
292
- // Install project elm-explorations/test again. This is based on the `make` command.
293
- Generate.generateElmJson(dependencyProvider, project);
294
- const dummyFile = path.join(project.generatedCodeDir, 'Dummy.elm');
295
- fs.writeFileSync(
296
- dummyFile,
297
- `module Dummy exposing (dummy)\ndummy = ()`
298
- );
299
- await Compile.compileSources(
300
- [dummyFile],
301
- project.generatedCodeDir,
302
- pathToElmBinary,
303
- options.report
304
- );
305
- };
306
- run().then(
307
- () => process.exit(0),
308
- (error) => {
309
- console.error(error.message);
310
- process.exit(1);
311
- }
312
- );
313
- });
314
-
315
- program.parse(process.argv);
316
- }
317
-
318
- main();