@ohos-ports/nx 19.8.4-beta.0

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 (840) hide show
  1. package/.eslintrc.json +140 -0
  2. package/LICENSE +22 -0
  3. package/README.md +66 -0
  4. package/bin/init-local.d.ts +8 -0
  5. package/bin/init-local.js +183 -0
  6. package/bin/nx-cloud.d.ts +3 -0
  7. package/bin/nx-cloud.js +47 -0
  8. package/bin/nx.d.ts +2 -0
  9. package/bin/nx.js +226 -0
  10. package/bin/post-install.d.ts +1 -0
  11. package/bin/post-install.js +64 -0
  12. package/bin/run-executor.d.ts +1 -0
  13. package/bin/run-executor.js +66 -0
  14. package/executors.json +19 -0
  15. package/generators.json +10 -0
  16. package/migrations.json +94 -0
  17. package/node_modules/@nrwl/tao/LICENSE +22 -0
  18. package/node_modules/@nrwl/tao/README.md +18 -0
  19. package/node_modules/@nrwl/tao/index.d.ts +1 -0
  20. package/node_modules/@nrwl/tao/index.js +7 -0
  21. package/node_modules/@nrwl/tao/package.json +41 -0
  22. package/node_modules/@nrwl/tao/src/commands/ngcli-adapter.d.ts +1 -0
  23. package/node_modules/@nrwl/tao/src/commands/ngcli-adapter.js +5 -0
  24. package/node_modules/@nrwl/tao/src/shared/logger.d.ts +1 -0
  25. package/node_modules/@nrwl/tao/src/shared/logger.js +5 -0
  26. package/node_modules/@nrwl/tao/src/shared/nx.d.ts +1 -0
  27. package/node_modules/@nrwl/tao/src/shared/nx.js +5 -0
  28. package/node_modules/@nrwl/tao/src/shared/package-manager.d.ts +1 -0
  29. package/node_modules/@nrwl/tao/src/shared/package-manager.js +5 -0
  30. package/node_modules/@nrwl/tao/src/shared/project-graph.d.ts +1 -0
  31. package/node_modules/@nrwl/tao/src/shared/project-graph.js +5 -0
  32. package/node_modules/@nrwl/tao/src/shared/tree.d.ts +1 -0
  33. package/node_modules/@nrwl/tao/src/shared/tree.js +5 -0
  34. package/node_modules/@nrwl/tao/src/utils/app-root.d.ts +1 -0
  35. package/node_modules/@nrwl/tao/src/utils/app-root.js +5 -0
  36. package/package.json +198 -0
  37. package/plugins/package-json.d.ts +1 -0
  38. package/plugins/package-json.js +12 -0
  39. package/presets/core.json +1 -0
  40. package/presets/npm.json +7 -0
  41. package/release/changelog-renderer/index.d.ts +80 -0
  42. package/release/changelog-renderer/index.js +315 -0
  43. package/release/index.d.ts +4 -0
  44. package/release/index.js +12 -0
  45. package/schemas/nx-schema.json +819 -0
  46. package/schemas/project-schema.json +331 -0
  47. package/schemas/workspace-schema.json +185 -0
  48. package/src/adapter/angular-json.d.ts +10 -0
  49. package/src/adapter/angular-json.js +128 -0
  50. package/src/adapter/compat.d.ts +2 -0
  51. package/src/adapter/compat.js +143 -0
  52. package/src/adapter/decorate-cli.d.ts +1 -0
  53. package/src/adapter/decorate-cli.js +24 -0
  54. package/src/adapter/ngcli-adapter.d.ts +90 -0
  55. package/src/adapter/ngcli-adapter.js +854 -0
  56. package/src/adapter/rxjs-for-await.d.ts +109 -0
  57. package/src/adapter/rxjs-for-await.js +362 -0
  58. package/src/command-line/activate-powerpack/activate-powerpack.d.ts +2 -0
  59. package/src/command-line/activate-powerpack/activate-powerpack.js +34 -0
  60. package/src/command-line/activate-powerpack/command-object.d.ts +6 -0
  61. package/src/command-line/activate-powerpack/command-object.js +26 -0
  62. package/src/command-line/add/add.d.ts +3 -0
  63. package/src/command-line/add/add.js +150 -0
  64. package/src/command-line/add/command-object.d.ts +8 -0
  65. package/src/command-line/add/command-object.js +27 -0
  66. package/src/command-line/affected/affected.d.ts +10 -0
  67. package/src/command-line/affected/affected.js +88 -0
  68. package/src/command-line/affected/command-object.d.ts +6 -0
  69. package/src/command-line/affected/command-object.js +82 -0
  70. package/src/command-line/connect/command-object.d.ts +3 -0
  71. package/src/command-line/connect/command-object.js +32 -0
  72. package/src/command-line/connect/connect-to-nx-cloud.d.ts +12 -0
  73. package/src/command-line/connect/connect-to-nx-cloud.js +149 -0
  74. package/src/command-line/connect/view-logs.d.ts +1 -0
  75. package/src/command-line/connect/view-logs.js +55 -0
  76. package/src/command-line/daemon/command-object.d.ts +2 -0
  77. package/src/command-line/daemon/command-object.js +21 -0
  78. package/src/command-line/daemon/daemon.d.ts +2 -0
  79. package/src/command-line/daemon/daemon.js +26 -0
  80. package/src/command-line/deprecated/command-objects.d.ts +9 -0
  81. package/src/command-line/deprecated/command-objects.js +48 -0
  82. package/src/command-line/examples.d.ts +5 -0
  83. package/src/command-line/examples.js +379 -0
  84. package/src/command-line/exec/command-object.d.ts +2 -0
  85. package/src/command-line/exec/command-object.js +19 -0
  86. package/src/command-line/exec/exec.d.ts +1 -0
  87. package/src/command-line/exec/exec.js +142 -0
  88. package/src/command-line/format/command-object.d.ts +3 -0
  89. package/src/command-line/format/command-object.js +46 -0
  90. package/src/command-line/format/format.d.ts +2 -0
  91. package/src/command-line/format/format.js +195 -0
  92. package/src/command-line/generate/command-object.d.ts +2 -0
  93. package/src/command-line/generate/command-object.js +67 -0
  94. package/src/command-line/generate/generate.d.ts +21 -0
  95. package/src/command-line/generate/generate.js +262 -0
  96. package/src/command-line/generate/generator-utils.d.ts +18 -0
  97. package/src/command-line/generate/generator-utils.js +86 -0
  98. package/src/command-line/graph/command-object.d.ts +25 -0
  99. package/src/command-line/graph/command-object.js +75 -0
  100. package/src/command-line/graph/graph.d.ts +68 -0
  101. package/src/command-line/graph/graph.js +806 -0
  102. package/src/command-line/import/command-object.d.ts +2 -0
  103. package/src/command-line/import/command-object.js +44 -0
  104. package/src/command-line/import/import.d.ts +25 -0
  105. package/src/command-line/import/import.js +328 -0
  106. package/src/command-line/import/utils/merge-remote-source.d.ts +2 -0
  107. package/src/command-line/import/utils/merge-remote-source.js +14 -0
  108. package/src/command-line/import/utils/needs-install.d.ts +3 -0
  109. package/src/command-line/import/utils/needs-install.js +31 -0
  110. package/src/command-line/import/utils/prepare-source-repo.d.ts +2 -0
  111. package/src/command-line/import/utils/prepare-source-repo.js +27 -0
  112. package/src/command-line/init/command-object.d.ts +2 -0
  113. package/src/command-line/init/command-object.js +83 -0
  114. package/src/command-line/init/implementation/add-nx-to-monorepo.d.ts +6 -0
  115. package/src/command-line/init/implementation/add-nx-to-monorepo.js +130 -0
  116. package/src/command-line/init/implementation/add-nx-to-nest.d.ts +5 -0
  117. package/src/command-line/init/implementation/add-nx-to-nest.js +345 -0
  118. package/src/command-line/init/implementation/add-nx-to-npm-repo.d.ts +6 -0
  119. package/src/command-line/init/implementation/add-nx-to-npm-repo.js +72 -0
  120. package/src/command-line/init/implementation/angular/index.d.ts +2 -0
  121. package/src/command-line/init/implementation/angular/index.js +125 -0
  122. package/src/command-line/init/implementation/angular/integrated-workspace.d.ts +1 -0
  123. package/src/command-line/init/implementation/angular/integrated-workspace.js +12 -0
  124. package/src/command-line/init/implementation/angular/legacy-angular-versions.d.ts +2 -0
  125. package/src/command-line/init/implementation/angular/legacy-angular-versions.js +122 -0
  126. package/src/command-line/init/implementation/angular/standalone-workspace.d.ts +1 -0
  127. package/src/command-line/init/implementation/angular/standalone-workspace.js +175 -0
  128. package/src/command-line/init/implementation/angular/types.d.ts +20 -0
  129. package/src/command-line/init/implementation/angular/types.js +2 -0
  130. package/src/command-line/init/implementation/dot-nx/add-nx-scripts.d.ts +8 -0
  131. package/src/command-line/init/implementation/dot-nx/add-nx-scripts.js +106 -0
  132. package/src/command-line/init/implementation/dot-nx/nxw.d.ts +1 -0
  133. package/src/command-line/init/implementation/dot-nx/nxw.js +117 -0
  134. package/src/command-line/init/implementation/react/add-craco-commands-to-package-scripts.d.ts +1 -0
  135. package/src/command-line/init/implementation/react/add-craco-commands-to-package-scripts.js +21 -0
  136. package/src/command-line/init/implementation/react/add-vite-commands-to-package-scripts.d.ts +1 -0
  137. package/src/command-line/init/implementation/react/add-vite-commands-to-package-scripts.js +18 -0
  138. package/src/command-line/init/implementation/react/check-for-custom-webpack-setup.d.ts +1 -0
  139. package/src/command-line/init/implementation/react/check-for-custom-webpack-setup.js +17 -0
  140. package/src/command-line/init/implementation/react/check-for-uncommitted-changes.d.ts +1 -0
  141. package/src/command-line/init/implementation/react/check-for-uncommitted-changes.js +20 -0
  142. package/src/command-line/init/implementation/react/clean-up-files.d.ts +1 -0
  143. package/src/command-line/init/implementation/react/clean-up-files.js +30 -0
  144. package/src/command-line/init/implementation/react/index.d.ts +4 -0
  145. package/src/command-line/init/implementation/react/index.js +230 -0
  146. package/src/command-line/init/implementation/react/read-name-from-package-json.d.ts +1 -0
  147. package/src/command-line/init/implementation/react/read-name-from-package-json.js +16 -0
  148. package/src/command-line/init/implementation/react/rename-js-to-jsx.d.ts +1 -0
  149. package/src/command-line/init/implementation/react/rename-js-to-jsx.js +22 -0
  150. package/src/command-line/init/implementation/react/tsconfig-setup.d.ts +1 -0
  151. package/src/command-line/init/implementation/react/tsconfig-setup.js +108 -0
  152. package/src/command-line/init/implementation/react/write-craco-config.d.ts +1 -0
  153. package/src/command-line/init/implementation/react/write-craco-config.js +61 -0
  154. package/src/command-line/init/implementation/react/write-vite-config.d.ts +1 -0
  155. package/src/command-line/init/implementation/react/write-vite-config.js +37 -0
  156. package/src/command-line/init/implementation/react/write-vite-index-html.d.ts +1 -0
  157. package/src/command-line/init/implementation/react/write-vite-index-html.js +24 -0
  158. package/src/command-line/init/implementation/utils.d.ts +16 -0
  159. package/src/command-line/init/implementation/utils.js +205 -0
  160. package/src/command-line/init/init-v1.d.ts +11 -0
  161. package/src/command-line/init/init-v1.js +130 -0
  162. package/src/command-line/init/init-v2.d.ts +14 -0
  163. package/src/command-line/init/init-v2.js +239 -0
  164. package/src/command-line/list/command-object.d.ts +2 -0
  165. package/src/command-line/list/command-object.js +15 -0
  166. package/src/command-line/list/list.d.ts +13 -0
  167. package/src/command-line/list/list.js +44 -0
  168. package/src/command-line/login/command-object.d.ts +2 -0
  169. package/src/command-line/login/command-object.js +16 -0
  170. package/src/command-line/login/login.d.ts +5 -0
  171. package/src/command-line/login/login.js +16 -0
  172. package/src/command-line/logout/command-object.d.ts +2 -0
  173. package/src/command-line/logout/command-object.js +12 -0
  174. package/src/command-line/logout/logout.d.ts +4 -0
  175. package/src/command-line/logout/logout.js +13 -0
  176. package/src/command-line/migrate/command-object.d.ts +3 -0
  177. package/src/command-line/migrate/command-object.js +171 -0
  178. package/src/command-line/migrate/migrate.d.ts +114 -0
  179. package/src/command-line/migrate/migrate.js +1110 -0
  180. package/src/command-line/new/command-object.d.ts +2 -0
  181. package/src/command-line/new/command-object.js +25 -0
  182. package/src/command-line/new/new.d.ts +3 -0
  183. package/src/command-line/new/new.js +30 -0
  184. package/src/command-line/nx-commands.d.ts +10 -0
  185. package/src/command-line/nx-commands.js +128 -0
  186. package/src/command-line/release/changelog.d.ts +34 -0
  187. package/src/command-line/release/changelog.js +997 -0
  188. package/src/command-line/release/command-object.d.ts +69 -0
  189. package/src/command-line/release/command-object.js +297 -0
  190. package/src/command-line/release/config/config.d.ts +54 -0
  191. package/src/command-line/release/config/config.js +864 -0
  192. package/src/command-line/release/config/conventional-commits.d.ts +2 -0
  193. package/src/command-line/release/config/conventional-commits.js +98 -0
  194. package/src/command-line/release/config/deep-merge-json.d.ts +1 -0
  195. package/src/command-line/release/config/deep-merge-json.js +28 -0
  196. package/src/command-line/release/config/filter-release-groups.d.ts +15 -0
  197. package/src/command-line/release/config/filter-release-groups.js +150 -0
  198. package/src/command-line/release/config/version-plans.d.ts +42 -0
  199. package/src/command-line/release/config/version-plans.js +220 -0
  200. package/src/command-line/release/index.d.ts +30 -0
  201. package/src/command-line/release/index.js +37 -0
  202. package/src/command-line/release/plan-check.d.ts +4 -0
  203. package/src/command-line/release/plan-check.js +169 -0
  204. package/src/command-line/release/plan.d.ts +4 -0
  205. package/src/command-line/release/plan.js +259 -0
  206. package/src/command-line/release/publish.d.ts +4 -0
  207. package/src/command-line/release/publish.js +164 -0
  208. package/src/command-line/release/release.d.ts +5 -0
  209. package/src/command-line/release/release.js +242 -0
  210. package/src/command-line/release/utils/batch-projects-by-generator-config.d.ts +7 -0
  211. package/src/command-line/release/utils/batch-projects-by-generator-config.js +36 -0
  212. package/src/command-line/release/utils/exec-command.d.ts +1 -0
  213. package/src/command-line/release/utils/exec-command.js +34 -0
  214. package/src/command-line/release/utils/generate-version-plan-content.d.ts +1 -0
  215. package/src/command-line/release/utils/generate-version-plan-content.js +20 -0
  216. package/src/command-line/release/utils/get-touched-projects-for-group.d.ts +7 -0
  217. package/src/command-line/release/utils/get-touched-projects-for-group.js +78 -0
  218. package/src/command-line/release/utils/git.d.ts +67 -0
  219. package/src/command-line/release/utils/git.js +407 -0
  220. package/src/command-line/release/utils/github.d.ts +31 -0
  221. package/src/command-line/release/utils/github.js +322 -0
  222. package/src/command-line/release/utils/launch-editor.d.ts +1 -0
  223. package/src/command-line/release/utils/launch-editor.js +46 -0
  224. package/src/command-line/release/utils/markdown.d.ts +6 -0
  225. package/src/command-line/release/utils/markdown.js +28 -0
  226. package/src/command-line/release/utils/print-changes.d.ts +6 -0
  227. package/src/command-line/release/utils/print-changes.js +61 -0
  228. package/src/command-line/release/utils/print-config.d.ts +7 -0
  229. package/src/command-line/release/utils/print-config.js +36 -0
  230. package/src/command-line/release/utils/resolve-changelog-renderer.d.ts +2 -0
  231. package/src/command-line/release/utils/resolve-changelog-renderer.js +30 -0
  232. package/src/command-line/release/utils/resolve-nx-json-error-message.d.ts +1 -0
  233. package/src/command-line/release/utils/resolve-nx-json-error-message.js +52 -0
  234. package/src/command-line/release/utils/resolve-semver-specifier.d.ts +4 -0
  235. package/src/command-line/release/utils/resolve-semver-specifier.js +57 -0
  236. package/src/command-line/release/utils/semver.d.ts +11 -0
  237. package/src/command-line/release/utils/semver.js +58 -0
  238. package/src/command-line/release/utils/shared.d.ts +53 -0
  239. package/src/command-line/release/utils/shared.js +219 -0
  240. package/src/command-line/release/version.d.ts +60 -0
  241. package/src/command-line/release/version.js +463 -0
  242. package/src/command-line/repair/command-object.d.ts +2 -0
  243. package/src/command-line/repair/command-object.js +20 -0
  244. package/src/command-line/repair/repair.d.ts +3 -0
  245. package/src/command-line/repair/repair.js +36 -0
  246. package/src/command-line/report/command-object.d.ts +2 -0
  247. package/src/command-line/report/command-object.js +11 -0
  248. package/src/command-line/report/report.d.ts +57 -0
  249. package/src/command-line/report/report.js +303 -0
  250. package/src/command-line/reset/command-object.d.ts +8 -0
  251. package/src/command-line/reset/command-object.js +26 -0
  252. package/src/command-line/reset/reset.d.ts +2 -0
  253. package/src/command-line/reset/reset.js +131 -0
  254. package/src/command-line/run/command-object.d.ts +6 -0
  255. package/src/command-line/run/command-object.js +42 -0
  256. package/src/command-line/run/executor-utils.d.ts +7 -0
  257. package/src/command-line/run/executor-utils.js +86 -0
  258. package/src/command-line/run/run-one.d.ts +7 -0
  259. package/src/command-line/run/run-one.js +116 -0
  260. package/src/command-line/run/run.d.ts +51 -0
  261. package/src/command-line/run/run.js +179 -0
  262. package/src/command-line/run-many/command-object.d.ts +2 -0
  263. package/src/command-line/run-many/command-object.js +17 -0
  264. package/src/command-line/run-many/run-many.d.ts +10 -0
  265. package/src/command-line/run-many/run-many.js +92 -0
  266. package/src/command-line/show/command-object.d.ts +26 -0
  267. package/src/command-line/show/command-object.js +115 -0
  268. package/src/command-line/show/project.d.ts +2 -0
  269. package/src/command-line/show/project.js +60 -0
  270. package/src/command-line/show/projects.d.ts +2 -0
  271. package/src/command-line/show/projects.js +77 -0
  272. package/src/command-line/sync/command-object.d.ts +6 -0
  273. package/src/command-line/sync/command-object.js +20 -0
  274. package/src/command-line/sync/sync.d.ts +6 -0
  275. package/src/command-line/sync/sync.js +114 -0
  276. package/src/command-line/watch/command-object.d.ts +2 -0
  277. package/src/command-line/watch/command-object.js +64 -0
  278. package/src/command-line/watch/watch.d.ts +23 -0
  279. package/src/command-line/watch/watch.js +173 -0
  280. package/src/command-line/yargs-utils/documentation.d.ts +2 -0
  281. package/src/command-line/yargs-utils/documentation.js +11 -0
  282. package/src/command-line/yargs-utils/shared-options.d.ts +75 -0
  283. package/src/command-line/yargs-utils/shared-options.js +253 -0
  284. package/src/commands-runner/command-graph.d.ts +13 -0
  285. package/src/commands-runner/command-graph.js +2 -0
  286. package/src/commands-runner/create-command-graph.d.ts +4 -0
  287. package/src/commands-runner/create-command-graph.js +67 -0
  288. package/src/commands-runner/get-command-projects.d.ts +3 -0
  289. package/src/commands-runner/get-command-projects.js +18 -0
  290. package/src/config/calculate-default-project-name.d.ts +4 -0
  291. package/src/config/calculate-default-project-name.js +41 -0
  292. package/src/config/configuration.d.ts +8 -0
  293. package/src/config/configuration.js +17 -0
  294. package/src/config/misc-interfaces.d.ts +212 -0
  295. package/src/config/misc-interfaces.js +2 -0
  296. package/src/config/nx-json.d.ts +479 -0
  297. package/src/config/nx-json.js +39 -0
  298. package/src/config/project-graph.d.ts +137 -0
  299. package/src/config/project-graph.js +37 -0
  300. package/src/config/schema-utils.d.ts +15 -0
  301. package/src/config/schema-utils.js +58 -0
  302. package/src/config/task-graph.d.ts +104 -0
  303. package/src/config/task-graph.js +2 -0
  304. package/src/config/to-project-name.d.ts +5 -0
  305. package/src/config/to-project-name.js +12 -0
  306. package/src/config/workspace-json-project-json.d.ts +225 -0
  307. package/src/config/workspace-json-project-json.js +2 -0
  308. package/src/core/graph/environment.js +1 -0
  309. package/src/core/graph/favicon.ico +0 -0
  310. package/src/core/graph/index.html +30 -0
  311. package/src/core/graph/main.js +1 -0
  312. package/src/core/graph/runtime.js +1 -0
  313. package/src/core/graph/styles.css +3 -0
  314. package/src/core/graph/styles.js +1 -0
  315. package/src/daemon/cache.d.ts +9 -0
  316. package/src/daemon/cache.js +68 -0
  317. package/src/daemon/client/client.d.ts +72 -0
  318. package/src/daemon/client/client.js +505 -0
  319. package/src/daemon/client/daemon-socket-messenger.d.ts +12 -0
  320. package/src/daemon/client/daemon-socket-messenger.js +26 -0
  321. package/src/daemon/client/exec-is-server-available.d.ts +1 -0
  322. package/src/daemon/client/exec-is-server-available.js +11 -0
  323. package/src/daemon/client/generate-help-output.d.ts +1 -0
  324. package/src/daemon/client/generate-help-output.js +26 -0
  325. package/src/daemon/is-on-daemon.d.ts +1 -0
  326. package/src/daemon/is-on-daemon.js +6 -0
  327. package/src/daemon/message-types/flush-sync-generator-changes-to-disk.d.ts +6 -0
  328. package/src/daemon/message-types/flush-sync-generator-changes-to-disk.js +11 -0
  329. package/src/daemon/message-types/force-shutdown.d.ts +5 -0
  330. package/src/daemon/message-types/force-shutdown.js +11 -0
  331. package/src/daemon/message-types/get-context-file-data.d.ts +5 -0
  332. package/src/daemon/message-types/get-context-file-data.js +11 -0
  333. package/src/daemon/message-types/get-files-in-directory.d.ts +6 -0
  334. package/src/daemon/message-types/get-files-in-directory.js +11 -0
  335. package/src/daemon/message-types/get-nx-workspace-files.d.ts +6 -0
  336. package/src/daemon/message-types/get-nx-workspace-files.js +11 -0
  337. package/src/daemon/message-types/get-registered-sync-generators.d.ts +5 -0
  338. package/src/daemon/message-types/get-registered-sync-generators.js +11 -0
  339. package/src/daemon/message-types/get-sync-generator-changes.d.ts +6 -0
  340. package/src/daemon/message-types/get-sync-generator-changes.js +11 -0
  341. package/src/daemon/message-types/glob.d.ts +7 -0
  342. package/src/daemon/message-types/glob.js +11 -0
  343. package/src/daemon/message-types/hash-glob.d.ts +7 -0
  344. package/src/daemon/message-types/hash-glob.js +11 -0
  345. package/src/daemon/message-types/task-history.d.ts +19 -0
  346. package/src/daemon/message-types/task-history.js +27 -0
  347. package/src/daemon/message-types/update-workspace-context.d.ts +8 -0
  348. package/src/daemon/message-types/update-workspace-context.js +11 -0
  349. package/src/daemon/server/file-watching/changed-projects.d.ts +10 -0
  350. package/src/daemon/server/file-watching/changed-projects.js +44 -0
  351. package/src/daemon/server/file-watching/file-watcher-sockets.d.ts +12 -0
  352. package/src/daemon/server/file-watching/file-watcher-sockets.js +66 -0
  353. package/src/daemon/server/handle-context-file-data.d.ts +2 -0
  354. package/src/daemon/server/handle-context-file-data.js +12 -0
  355. package/src/daemon/server/handle-flush-sync-generator-changes-to-disk.d.ts +2 -0
  356. package/src/daemon/server/handle-flush-sync-generator-changes-to-disk.js +11 -0
  357. package/src/daemon/server/handle-force-shutdown.d.ts +5 -0
  358. package/src/daemon/server/handle-force-shutdown.js +18 -0
  359. package/src/daemon/server/handle-get-files-in-directory.d.ts +2 -0
  360. package/src/daemon/server/handle-get-files-in-directory.js +12 -0
  361. package/src/daemon/server/handle-get-registered-sync-generators.d.ts +2 -0
  362. package/src/daemon/server/handle-get-registered-sync-generators.js +11 -0
  363. package/src/daemon/server/handle-get-sync-generator-changes.d.ts +2 -0
  364. package/src/daemon/server/handle-get-sync-generator-changes.js +19 -0
  365. package/src/daemon/server/handle-glob.d.ts +2 -0
  366. package/src/daemon/server/handle-glob.js +12 -0
  367. package/src/daemon/server/handle-hash-glob.d.ts +2 -0
  368. package/src/daemon/server/handle-hash-glob.js +12 -0
  369. package/src/daemon/server/handle-hash-tasks.d.ts +10 -0
  370. package/src/daemon/server/handle-hash-tasks.js +35 -0
  371. package/src/daemon/server/handle-nx-workspace-files.d.ts +2 -0
  372. package/src/daemon/server/handle-nx-workspace-files.js +12 -0
  373. package/src/daemon/server/handle-outputs-tracking.d.ts +15 -0
  374. package/src/daemon/server/handle-outputs-tracking.js +35 -0
  375. package/src/daemon/server/handle-process-in-background.d.ts +6 -0
  376. package/src/daemon/server/handle-process-in-background.js +32 -0
  377. package/src/daemon/server/handle-request-project-graph.d.ts +2 -0
  378. package/src/daemon/server/handle-request-project-graph.js +36 -0
  379. package/src/daemon/server/handle-request-shutdown.d.ts +5 -0
  380. package/src/daemon/server/handle-request-shutdown.js +27 -0
  381. package/src/daemon/server/handle-task-history.d.ts +13 -0
  382. package/src/daemon/server/handle-task-history.js +30 -0
  383. package/src/daemon/server/handle-update-workspace-context.d.ts +2 -0
  384. package/src/daemon/server/handle-update-workspace-context.js +11 -0
  385. package/src/daemon/server/logger.d.ts +18 -0
  386. package/src/daemon/server/logger.js +37 -0
  387. package/src/daemon/server/outputs-tracking.d.ts +8 -0
  388. package/src/daemon/server/outputs-tracking.js +93 -0
  389. package/src/daemon/server/plugins.d.ts +3 -0
  390. package/src/daemon/server/plugins.js +32 -0
  391. package/src/daemon/server/project-graph-incremental-recomputation.d.ts +24 -0
  392. package/src/daemon/server/project-graph-incremental-recomputation.js +300 -0
  393. package/src/daemon/server/server.d.ts +9 -0
  394. package/src/daemon/server/server.js +380 -0
  395. package/src/daemon/server/shutdown-utils.d.ts +17 -0
  396. package/src/daemon/server/shutdown-utils.js +89 -0
  397. package/src/daemon/server/start.d.ts +1 -0
  398. package/src/daemon/server/start.js +17 -0
  399. package/src/daemon/server/sync-generators.d.ts +13 -0
  400. package/src/daemon/server/sync-generators.js +357 -0
  401. package/src/daemon/server/watcher.d.ts +11 -0
  402. package/src/daemon/server/watcher.js +103 -0
  403. package/src/daemon/socket-utils.d.ts +12 -0
  404. package/src/daemon/socket-utils.js +55 -0
  405. package/src/daemon/tmp-dir.d.ts +12 -0
  406. package/src/daemon/tmp-dir.js +70 -0
  407. package/src/devkit-exports.d.ts +136 -0
  408. package/src/devkit-exports.js +142 -0
  409. package/src/devkit-internals.d.ts +26 -0
  410. package/src/devkit-internals.js +52 -0
  411. package/src/devkit-testing-exports.d.ts +2 -0
  412. package/src/devkit-testing-exports.js +8 -0
  413. package/src/executors/noop/noop.impl.d.ts +3 -0
  414. package/src/executors/noop/noop.impl.js +6 -0
  415. package/src/executors/noop/schema.json +10 -0
  416. package/src/executors/run-commands/run-commands.impl.d.ts +57 -0
  417. package/src/executors/run-commands/run-commands.impl.js +480 -0
  418. package/src/executors/run-commands/schema.json +184 -0
  419. package/src/executors/run-script/run-script.impl.d.ts +8 -0
  420. package/src/executors/run-script/run-script.impl.js +57 -0
  421. package/src/executors/run-script/schema.json +28 -0
  422. package/src/executors/utils/convert-nx-executor.d.ts +10 -0
  423. package/src/executors/utils/convert-nx-executor.js +85 -0
  424. package/src/generators/internal-utils/format-changed-files-with-prettier-if-available.d.ts +14 -0
  425. package/src/generators/internal-utils/format-changed-files-with-prettier-if-available.js +58 -0
  426. package/src/generators/testing-utils/create-tree-with-empty-workspace.d.ts +11 -0
  427. package/src/generators/testing-utils/create-tree-with-empty-workspace.js +52 -0
  428. package/src/generators/testing-utils/create-tree.d.ts +5 -0
  429. package/src/generators/testing-utils/create-tree.js +10 -0
  430. package/src/generators/tree.d.ts +125 -0
  431. package/src/generators/tree.js +309 -0
  432. package/src/generators/utils/glob.d.ts +22 -0
  433. package/src/generators/utils/glob.js +51 -0
  434. package/src/generators/utils/json.d.ts +28 -0
  435. package/src/generators/utils/json.js +48 -0
  436. package/src/generators/utils/nx-json.d.ts +11 -0
  437. package/src/generators/utils/nx-json.js +58 -0
  438. package/src/generators/utils/project-configuration.d.ts +42 -0
  439. package/src/generators/utils/project-configuration.js +278 -0
  440. package/src/hasher/create-task-hasher.d.ts +4 -0
  441. package/src/hasher/create-task-hasher.js +15 -0
  442. package/src/hasher/file-hasher.d.ts +2 -0
  443. package/src/hasher/file-hasher.js +18 -0
  444. package/src/hasher/hash-task.d.ts +8 -0
  445. package/src/hasher/hash-task.js +85 -0
  446. package/src/hasher/native-task-hasher-impl.d.ts +18 -0
  447. package/src/hasher/native-task-hasher-impl.js +37 -0
  448. package/src/hasher/node-task-hasher-impl.d.ts +48 -0
  449. package/src/hasher/node-task-hasher-impl.js +449 -0
  450. package/src/hasher/task-hasher.d.ts +128 -0
  451. package/src/hasher/task-hasher.js +266 -0
  452. package/src/index.d.ts +1 -0
  453. package/src/index.js +5 -0
  454. package/src/migrations/update-15-0-0/migrate-to-inputs.d.ts +2 -0
  455. package/src/migrations/update-15-0-0/migrate-to-inputs.js +102 -0
  456. package/src/migrations/update-15-0-0/prefix-outputs.d.ts +2 -0
  457. package/src/migrations/update-15-0-0/prefix-outputs.js +49 -0
  458. package/src/migrations/update-16-0-0/remove-nrwl-cli.d.ts +2 -0
  459. package/src/migrations/update-16-0-0/remove-nrwl-cli.js +16 -0
  460. package/src/migrations/update-16-0-0/update-depends-on-to-tokens.d.ts +2 -0
  461. package/src/migrations/update-16-0-0/update-depends-on-to-tokens.js +97 -0
  462. package/src/migrations/update-16-0-0/update-nx-cloud-runner.d.ts +2 -0
  463. package/src/migrations/update-16-0-0/update-nx-cloud-runner.js +29 -0
  464. package/src/migrations/update-16-2-0/remove-run-commands-output-path.d.ts +2 -0
  465. package/src/migrations/update-16-2-0/remove-run-commands-output-path.js +45 -0
  466. package/src/migrations/update-16-8-0/escape-dollar-sign-env-variables.d.ts +12 -0
  467. package/src/migrations/update-16-8-0/escape-dollar-sign-env-variables.js +67 -0
  468. package/src/migrations/update-16-9-0/remove-project-name-and-root-format.d.ts +2 -0
  469. package/src/migrations/update-16-9-0/remove-project-name-and-root-format.js +21 -0
  470. package/src/migrations/update-17-0-0/move-cache-directory.d.ts +2 -0
  471. package/src/migrations/update-17-0-0/move-cache-directory.js +35 -0
  472. package/src/migrations/update-17-0-0/rm-default-collection-npm-scope.d.ts +2 -0
  473. package/src/migrations/update-17-0-0/rm-default-collection-npm-scope.js +72 -0
  474. package/src/migrations/update-17-0-0/use-minimal-config-for-tasks-runner-options.d.ts +2 -0
  475. package/src/migrations/update-17-0-0/use-minimal-config-for-tasks-runner-options.js +122 -0
  476. package/src/migrations/update-17-2-0/move-default-base.d.ts +5 -0
  477. package/src/migrations/update-17-2-0/move-default-base.js +21 -0
  478. package/src/migrations/update-17-3-0/nx-release-path.d.ts +3 -0
  479. package/src/migrations/update-17-3-0/nx-release-path.js +47 -0
  480. package/src/migrations/update-17-3-0/update-nxw.d.ts +2 -0
  481. package/src/migrations/update-17-3-0/update-nxw.js +7 -0
  482. package/src/migrations/update-18-0-0/disable-crystal-for-existing-workspaces.d.ts +2 -0
  483. package/src/migrations/update-18-0-0/disable-crystal-for-existing-workspaces.js +11 -0
  484. package/src/migrations/update-19-2-0/move-workspace-data-directory.d.ts +4 -0
  485. package/src/migrations/update-19-2-0/move-workspace-data-directory.js +33 -0
  486. package/src/migrations/update-19-2-4/set-project-name.d.ts +2 -0
  487. package/src/migrations/update-19-2-4/set-project-name.js +34 -0
  488. package/src/native/assert-supported-platform.d.ts +1 -0
  489. package/src/native/assert-supported-platform.js +38 -0
  490. package/src/native/browser.js +1 -0
  491. package/src/native/index.d.ts +282 -0
  492. package/src/native/index.js +94 -0
  493. package/src/native/native-bindings.js +405 -0
  494. package/src/native/native-file-cache-location.d.ts +1 -0
  495. package/src/native/native-file-cache-location.js +22 -0
  496. package/src/native/nx.openharmony-arm64.node +0 -0
  497. package/src/native/nx.wasi-browser.js +114 -0
  498. package/src/native/nx.wasi.cjs +145 -0
  499. package/src/native/nx.wasm32-wasi.wasm +0 -0
  500. package/src/native/transform-objects.d.ts +3 -0
  501. package/src/native/transform-objects.js +51 -0
  502. package/src/native/wasi-worker-browser.mjs +32 -0
  503. package/src/native/wasi-worker.mjs +63 -0
  504. package/src/nx-cloud/debug-logger.d.ts +1 -0
  505. package/src/nx-cloud/debug-logger.js +8 -0
  506. package/src/nx-cloud/generators/connect-to-nx-cloud/connect-to-nx-cloud.d.ts +14 -0
  507. package/src/nx-cloud/generators/connect-to-nx-cloud/connect-to-nx-cloud.js +159 -0
  508. package/src/nx-cloud/generators/connect-to-nx-cloud/schema.json +41 -0
  509. package/src/nx-cloud/models/onboarding-status.d.ts +1 -0
  510. package/src/nx-cloud/models/onboarding-status.js +2 -0
  511. package/src/nx-cloud/nx-cloud-tasks-runner-shell.d.ts +16 -0
  512. package/src/nx-cloud/nx-cloud-tasks-runner-shell.js +41 -0
  513. package/src/nx-cloud/resolution-helpers.d.ts +1 -0
  514. package/src/nx-cloud/resolution-helpers.js +19 -0
  515. package/src/nx-cloud/update-manager.d.ts +19 -0
  516. package/src/nx-cloud/update-manager.js +240 -0
  517. package/src/nx-cloud/utilities/axios.d.ts +2 -0
  518. package/src/nx-cloud/utilities/axios.js +24 -0
  519. package/src/nx-cloud/utilities/client.d.ts +10 -0
  520. package/src/nx-cloud/utilities/client.js +35 -0
  521. package/src/nx-cloud/utilities/environment.d.ts +3 -0
  522. package/src/nx-cloud/utilities/environment.js +47 -0
  523. package/src/nx-cloud/utilities/get-cloud-options.d.ts +5 -0
  524. package/src/nx-cloud/utilities/get-cloud-options.js +23 -0
  525. package/src/nx-cloud/utilities/is-workspace-claimed.d.ts +1 -0
  526. package/src/nx-cloud/utilities/is-workspace-claimed.js +25 -0
  527. package/src/nx-cloud/utilities/onboarding.d.ts +5 -0
  528. package/src/nx-cloud/utilities/onboarding.js +28 -0
  529. package/src/nx-cloud/utilities/url-shorten.d.ts +10 -0
  530. package/src/nx-cloud/utilities/url-shorten.js +156 -0
  531. package/src/plugins/js/hasher/hasher.d.ts +5 -0
  532. package/src/plugins/js/hasher/hasher.js +51 -0
  533. package/src/plugins/js/index.d.ts +4 -0
  534. package/src/plugins/js/index.js +106 -0
  535. package/src/plugins/js/lock-file/lock-file.d.ts +34 -0
  536. package/src/plugins/js/lock-file/lock-file.js +211 -0
  537. package/src/plugins/js/lock-file/npm-parser.d.ts +7 -0
  538. package/src/plugins/js/lock-file/npm-parser.js +475 -0
  539. package/src/plugins/js/lock-file/pnpm-parser.d.ts +7 -0
  540. package/src/plugins/js/lock-file/pnpm-parser.js +466 -0
  541. package/src/plugins/js/lock-file/project-graph-pruning.d.ts +7 -0
  542. package/src/plugins/js/lock-file/project-graph-pruning.js +154 -0
  543. package/src/plugins/js/lock-file/utils/package-json.d.ts +10 -0
  544. package/src/plugins/js/lock-file/utils/package-json.js +33 -0
  545. package/src/plugins/js/lock-file/utils/pnpm-normalizer.d.ts +20 -0
  546. package/src/plugins/js/lock-file/utils/pnpm-normalizer.js +854 -0
  547. package/src/plugins/js/lock-file/yarn-parser.d.ts +7 -0
  548. package/src/plugins/js/lock-file/yarn-parser.js +436 -0
  549. package/src/plugins/js/package-json/create-package-json.d.ts +29 -0
  550. package/src/plugins/js/package-json/create-package-json.js +247 -0
  551. package/src/plugins/js/project-graph/affected/lock-file-changes.d.ts +4 -0
  552. package/src/plugins/js/project-graph/affected/lock-file-changes.js +28 -0
  553. package/src/plugins/js/project-graph/affected/npm-packages.d.ts +4 -0
  554. package/src/plugins/js/project-graph/affected/npm-packages.js +68 -0
  555. package/src/plugins/js/project-graph/affected/touched-projects.d.ts +2 -0
  556. package/src/plugins/js/project-graph/affected/touched-projects.js +18 -0
  557. package/src/plugins/js/project-graph/affected/tsconfig-json-changes.d.ts +4 -0
  558. package/src/plugins/js/project-graph/affected/tsconfig-json-changes.js +63 -0
  559. package/src/plugins/js/project-graph/build-dependencies/build-dependencies.d.ts +6 -0
  560. package/src/plugins/js/project-graph/build-dependencies/build-dependencies.js +45 -0
  561. package/src/plugins/js/project-graph/build-dependencies/explicit-package-json-dependencies.d.ts +4 -0
  562. package/src/plugins/js/project-graph/build-dependencies/explicit-package-json-dependencies.js +94 -0
  563. package/src/plugins/js/project-graph/build-dependencies/explicit-project-dependencies.d.ts +4 -0
  564. package/src/plugins/js/project-graph/build-dependencies/explicit-project-dependencies.js +88 -0
  565. package/src/plugins/js/project-graph/build-dependencies/strip-source-code.d.ts +7 -0
  566. package/src/plugins/js/project-graph/build-dependencies/strip-source-code.js +155 -0
  567. package/src/plugins/js/project-graph/build-dependencies/target-project-locator.d.ts +59 -0
  568. package/src/plugins/js/project-graph/build-dependencies/target-project-locator.js +296 -0
  569. package/src/plugins/js/project-graph/build-dependencies/typescript-import-locator.d.ts +16 -0
  570. package/src/plugins/js/project-graph/build-dependencies/typescript-import-locator.js +120 -0
  571. package/src/plugins/js/project-graph/build-nodes/build-npm-package-nodes.d.ts +2 -0
  572. package/src/plugins/js/project-graph/build-nodes/build-npm-package-nodes.js +31 -0
  573. package/src/plugins/js/utils/config.d.ts +2 -0
  574. package/src/plugins/js/utils/config.js +68 -0
  575. package/src/plugins/js/utils/register.d.ts +152 -0
  576. package/src/plugins/js/utils/register.js +343 -0
  577. package/src/plugins/js/utils/resolve-relative-to-dir.d.ts +5 -0
  578. package/src/plugins/js/utils/resolve-relative-to-dir.js +17 -0
  579. package/src/plugins/js/utils/typescript.d.ts +14 -0
  580. package/src/plugins/js/utils/typescript.js +97 -0
  581. package/src/plugins/js/versions.d.ts +1 -0
  582. package/src/plugins/js/versions.js +4 -0
  583. package/src/plugins/package-json/create-nodes.d.ts +20 -0
  584. package/src/plugins/package-json/create-nodes.js +187 -0
  585. package/src/plugins/package-json/index.d.ts +2 -0
  586. package/src/plugins/package-json/index.js +6 -0
  587. package/src/plugins/project-json/build-nodes/project-json.d.ts +6 -0
  588. package/src/plugins/project-json/build-nodes/project-json.js +45 -0
  589. package/src/project-graph/affected/affected-project-graph-models.d.ts +11 -0
  590. package/src/project-graph/affected/affected-project-graph-models.js +2 -0
  591. package/src/project-graph/affected/affected-project-graph.d.ts +4 -0
  592. package/src/project-graph/affected/affected-project-graph.js +82 -0
  593. package/src/project-graph/affected/locators/project-glob-changes.d.ts +2 -0
  594. package/src/project-graph/affected/locators/project-glob-changes.js +31 -0
  595. package/src/project-graph/affected/locators/workspace-json-changes.d.ts +4 -0
  596. package/src/project-graph/affected/locators/workspace-json-changes.js +47 -0
  597. package/src/project-graph/affected/locators/workspace-projects.d.ts +3 -0
  598. package/src/project-graph/affected/locators/workspace-projects.js +74 -0
  599. package/src/project-graph/build-project-graph.d.ts +22 -0
  600. package/src/project-graph/build-project-graph.js +292 -0
  601. package/src/project-graph/error-types.d.ts +135 -0
  602. package/src/project-graph/error-types.js +305 -0
  603. package/src/project-graph/file-map-utils.d.ts +15 -0
  604. package/src/project-graph/file-map-utils.js +55 -0
  605. package/src/project-graph/file-utils.d.ts +30 -0
  606. package/src/project-graph/file-utils.js +179 -0
  607. package/src/project-graph/nx-deps-cache.d.ts +48 -0
  608. package/src/project-graph/nx-deps-cache.js +227 -0
  609. package/src/project-graph/operators.d.ts +12 -0
  610. package/src/project-graph/operators.js +114 -0
  611. package/src/project-graph/plugins/index.d.ts +3 -0
  612. package/src/project-graph/plugins/index.js +10 -0
  613. package/src/project-graph/plugins/internal-api.d.ts +29 -0
  614. package/src/project-graph/plugins/internal-api.js +134 -0
  615. package/src/project-graph/plugins/isolation/index.d.ts +3 -0
  616. package/src/project-graph/plugins/isolation/index.js +14 -0
  617. package/src/project-graph/plugins/isolation/messaging.d.ts +125 -0
  618. package/src/project-graph/plugins/isolation/messaging.js +46 -0
  619. package/src/project-graph/plugins/isolation/plugin-pool.d.ts +3 -0
  620. package/src/project-graph/plugins/isolation/plugin-pool.js +301 -0
  621. package/src/project-graph/plugins/isolation/plugin-worker.d.ts +1 -0
  622. package/src/project-graph/plugins/isolation/plugin-worker.js +158 -0
  623. package/src/project-graph/plugins/loader.d.ts +24 -0
  624. package/src/project-graph/plugins/loader.js +220 -0
  625. package/src/project-graph/plugins/public-api.d.ts +130 -0
  626. package/src/project-graph/plugins/public-api.js +4 -0
  627. package/src/project-graph/plugins/utils.d.ts +8 -0
  628. package/src/project-graph/plugins/utils.js +63 -0
  629. package/src/project-graph/project-graph-builder.d.ts +133 -0
  630. package/src/project-graph/project-graph-builder.js +379 -0
  631. package/src/project-graph/project-graph.d.ts +51 -0
  632. package/src/project-graph/project-graph.js +261 -0
  633. package/src/project-graph/utils/build-all-workspace-files.d.ts +2 -0
  634. package/src/project-graph/utils/build-all-workspace-files.js +14 -0
  635. package/src/project-graph/utils/find-project-for-path.d.ts +20 -0
  636. package/src/project-graph/utils/find-project-for-path.js +55 -0
  637. package/src/project-graph/utils/implicit-project-dependencies.d.ts +3 -0
  638. package/src/project-graph/utils/implicit-project-dependencies.js +18 -0
  639. package/src/project-graph/utils/normalize-project-nodes.d.ts +6 -0
  640. package/src/project-graph/utils/normalize-project-nodes.js +88 -0
  641. package/src/project-graph/utils/project-configuration-utils.d.ts +74 -0
  642. package/src/project-graph/utils/project-configuration-utils.js +781 -0
  643. package/src/project-graph/utils/retrieve-workspace-files.d.ts +30 -0
  644. package/src/project-graph/utils/retrieve-workspace-files.js +88 -0
  645. package/src/tasks-runner/batch/batch-messages.d.ts +33 -0
  646. package/src/tasks-runner/batch/batch-messages.js +9 -0
  647. package/src/tasks-runner/batch/run-batch.d.ts +1 -0
  648. package/src/tasks-runner/batch/run-batch.js +77 -0
  649. package/src/tasks-runner/cache.d.ts +64 -0
  650. package/src/tasks-runner/cache.js +399 -0
  651. package/src/tasks-runner/create-task-graph.d.ts +28 -0
  652. package/src/tasks-runner/create-task-graph.js +242 -0
  653. package/src/tasks-runner/default-tasks-runner.d.ts +26 -0
  654. package/src/tasks-runner/default-tasks-runner.js +62 -0
  655. package/src/tasks-runner/fork.d.ts +1 -0
  656. package/src/tasks-runner/fork.js +30 -0
  657. package/src/tasks-runner/forked-process-task-runner.d.ts +42 -0
  658. package/src/tasks-runner/forked-process-task-runner.js +405 -0
  659. package/src/tasks-runner/init-tasks-runner.d.ts +13 -0
  660. package/src/tasks-runner/init-tasks-runner.js +61 -0
  661. package/src/tasks-runner/life-cycle.d.ts +43 -0
  662. package/src/tasks-runner/life-cycle.js +71 -0
  663. package/src/tasks-runner/life-cycles/dynamic-run-many-terminal-output-life-cycle.d.ts +25 -0
  664. package/src/tasks-runner/life-cycles/dynamic-run-many-terminal-output-life-cycle.js +353 -0
  665. package/src/tasks-runner/life-cycles/dynamic-run-one-terminal-output-life-cycle.d.ts +24 -0
  666. package/src/tasks-runner/life-cycles/dynamic-run-one-terminal-output-life-cycle.js +228 -0
  667. package/src/tasks-runner/life-cycles/empty-terminal-output-life-cycle.d.ts +5 -0
  668. package/src/tasks-runner/life-cycles/empty-terminal-output-life-cycle.js +16 -0
  669. package/src/tasks-runner/life-cycles/formatting-utils.d.ts +3 -0
  670. package/src/tasks-runner/life-cycles/formatting-utils.js +55 -0
  671. package/src/tasks-runner/life-cycles/invoke-runner-terminal-output-life-cycle.d.ts +13 -0
  672. package/src/tasks-runner/life-cycles/invoke-runner-terminal-output-life-cycle.js +67 -0
  673. package/src/tasks-runner/life-cycles/pretty-time.d.ts +4 -0
  674. package/src/tasks-runner/life-cycles/pretty-time.js +73 -0
  675. package/src/tasks-runner/life-cycles/static-run-many-terminal-output-life-cycle.d.ts +29 -0
  676. package/src/tasks-runner/life-cycles/static-run-many-terminal-output-life-cycle.js +106 -0
  677. package/src/tasks-runner/life-cycles/static-run-one-terminal-output-life-cycle.d.ts +28 -0
  678. package/src/tasks-runner/life-cycles/static-run-one-terminal-output-life-cycle.js +97 -0
  679. package/src/tasks-runner/life-cycles/store-run-information-life-cycle.d.ts +17 -0
  680. package/src/tasks-runner/life-cycles/store-run-information-life-cycle.js +87 -0
  681. package/src/tasks-runner/life-cycles/task-history-life-cycle-old.d.ts +9 -0
  682. package/src/tasks-runner/life-cycles/task-history-life-cycle-old.js +54 -0
  683. package/src/tasks-runner/life-cycles/task-history-life-cycle.d.ts +10 -0
  684. package/src/tasks-runner/life-cycles/task-history-life-cycle.js +55 -0
  685. package/src/tasks-runner/life-cycles/task-profiling-life-cycle.d.ts +14 -0
  686. package/src/tasks-runner/life-cycles/task-profiling-life-cycle.js +73 -0
  687. package/src/tasks-runner/life-cycles/task-results-life-cycle.d.ts +6 -0
  688. package/src/tasks-runner/life-cycles/task-results-life-cycle.js +17 -0
  689. package/src/tasks-runner/life-cycles/task-timings-life-cycle.d.ts +8 -0
  690. package/src/tasks-runner/life-cycles/task-timings-life-cycle.js +39 -0
  691. package/src/tasks-runner/life-cycles/view-logs-utils.d.ts +1 -0
  692. package/src/tasks-runner/life-cycles/view-logs-utils.js +15 -0
  693. package/src/tasks-runner/pseudo-ipc.d.ts +48 -0
  694. package/src/tasks-runner/pseudo-ipc.js +140 -0
  695. package/src/tasks-runner/pseudo-terminal.d.ts +45 -0
  696. package/src/tasks-runner/pseudo-terminal.js +168 -0
  697. package/src/tasks-runner/remove-old-cache-records.d.ts +1 -0
  698. package/src/tasks-runner/remove-old-cache-records.js +60 -0
  699. package/src/tasks-runner/run-command.d.ts +38 -0
  700. package/src/tasks-runner/run-command.js +590 -0
  701. package/src/tasks-runner/task-env.d.ts +20 -0
  702. package/src/tasks-runner/task-env.js +171 -0
  703. package/src/tasks-runner/task-graph-utils.d.ts +10 -0
  704. package/src/tasks-runner/task-graph-utils.js +88 -0
  705. package/src/tasks-runner/task-orchestrator.d.ts +53 -0
  706. package/src/tasks-runner/task-orchestrator.js +458 -0
  707. package/src/tasks-runner/tasks-runner.d.ts +23 -0
  708. package/src/tasks-runner/tasks-runner.js +2 -0
  709. package/src/tasks-runner/tasks-schedule.d.ts +41 -0
  710. package/src/tasks-runner/tasks-schedule.js +192 -0
  711. package/src/tasks-runner/utils.d.ts +57 -0
  712. package/src/tasks-runner/utils.js +392 -0
  713. package/src/utils/ab-testing.d.ts +51 -0
  714. package/src/utils/ab-testing.js +112 -0
  715. package/src/utils/all-file-data.d.ts +2 -0
  716. package/src/utils/all-file-data.js +8 -0
  717. package/src/utils/app-root.d.ts +8 -0
  718. package/src/utils/app-root.js +12 -0
  719. package/src/utils/assert-workspace-validity.d.ts +3 -0
  720. package/src/utils/assert-workspace-validity.js +84 -0
  721. package/src/utils/async-iterator.d.ts +2 -0
  722. package/src/utils/async-iterator.js +18 -0
  723. package/src/utils/cache-directory.d.ts +7 -0
  724. package/src/utils/cache-directory.js +71 -0
  725. package/src/utils/child-process.d.ts +18 -0
  726. package/src/utils/child-process.js +119 -0
  727. package/src/utils/chunkify.d.ts +11 -0
  728. package/src/utils/chunkify.js +44 -0
  729. package/src/utils/code-frames.d.ts +14 -0
  730. package/src/utils/code-frames.js +118 -0
  731. package/src/utils/collapse-expanded-outputs.d.ts +1 -0
  732. package/src/utils/collapse-expanded-outputs.js +40 -0
  733. package/src/utils/command-line-utils.d.ts +54 -0
  734. package/src/utils/command-line-utils.js +267 -0
  735. package/src/utils/consume-messages-from-socket.d.ts +1 -0
  736. package/src/utils/consume-messages-from-socket.js +21 -0
  737. package/src/utils/db-connection.d.ts +5 -0
  738. package/src/utils/db-connection.js +22 -0
  739. package/src/utils/default-base.d.ts +1 -0
  740. package/src/utils/default-base.js +17 -0
  741. package/src/utils/dotenv.d.ts +7 -0
  742. package/src/utils/dotenv.js +21 -0
  743. package/src/utils/exit-codes.d.ts +5 -0
  744. package/src/utils/exit-codes.js +19 -0
  745. package/src/utils/fileutils.d.ts +75 -0
  746. package/src/utils/fileutils.js +151 -0
  747. package/src/utils/find-matching-projects.d.ts +10 -0
  748. package/src/utils/find-matching-projects.js +210 -0
  749. package/src/utils/find-workspace-root.d.ts +11 -0
  750. package/src/utils/find-workspace-root.js +33 -0
  751. package/src/utils/get-package-name-from-import-path.d.ts +1 -0
  752. package/src/utils/get-package-name-from-import-path.js +17 -0
  753. package/src/utils/git-utils.d.ts +41 -0
  754. package/src/utils/git-utils.index-filter.d.ts +0 -0
  755. package/src/utils/git-utils.index-filter.js +21 -0
  756. package/src/utils/git-utils.js +259 -0
  757. package/src/utils/git-utils.tree-filter.d.ts +11 -0
  758. package/src/utils/git-utils.tree-filter.js +45 -0
  759. package/src/utils/globs.d.ts +3 -0
  760. package/src/utils/globs.js +18 -0
  761. package/src/utils/handle-errors.d.ts +1 -0
  762. package/src/utils/handle-errors.js +71 -0
  763. package/src/utils/ignore.d.ts +8 -0
  764. package/src/utils/ignore.js +75 -0
  765. package/src/utils/installation-directory.d.ts +2 -0
  766. package/src/utils/installation-directory.js +12 -0
  767. package/src/utils/is-ci.d.ts +1 -0
  768. package/src/utils/is-ci.js +20 -0
  769. package/src/utils/json-diff.d.ts +18 -0
  770. package/src/utils/json-diff.js +112 -0
  771. package/src/utils/json.d.ts +44 -0
  772. package/src/utils/json.js +62 -0
  773. package/src/utils/legacy-task-history.d.ts +8 -0
  774. package/src/utils/legacy-task-history.js +87 -0
  775. package/src/utils/logger.d.ts +12 -0
  776. package/src/utils/logger.js +52 -0
  777. package/src/utils/nx-cloud-utils.d.ts +3 -0
  778. package/src/utils/nx-cloud-utils.js +18 -0
  779. package/src/utils/nx-plugin.deprecated.d.ts +31 -0
  780. package/src/utils/nx-plugin.deprecated.js +20 -0
  781. package/src/utils/object-sort.d.ts +1 -0
  782. package/src/utils/object-sort.js +9 -0
  783. package/src/utils/output.d.ts +71 -0
  784. package/src/utils/output.js +240 -0
  785. package/src/utils/package-json.d.ts +103 -0
  786. package/src/utils/package-json.js +173 -0
  787. package/src/utils/package-manager.d.ts +100 -0
  788. package/src/utils/package-manager.js +404 -0
  789. package/src/utils/params.d.ts +137 -0
  790. package/src/utils/params.js +664 -0
  791. package/src/utils/path.d.ts +19 -0
  792. package/src/utils/path.js +37 -0
  793. package/src/utils/perf-logging.d.ts +1 -0
  794. package/src/utils/perf-logging.js +13 -0
  795. package/src/utils/plugins/core-plugins.d.ts +6 -0
  796. package/src/utils/plugins/core-plugins.js +109 -0
  797. package/src/utils/plugins/index.d.ts +4 -0
  798. package/src/utils/plugins/index.js +13 -0
  799. package/src/utils/plugins/installed-plugins.d.ts +5 -0
  800. package/src/utils/plugins/installed-plugins.js +76 -0
  801. package/src/utils/plugins/local-plugins.d.ts +4 -0
  802. package/src/utils/plugins/local-plugins.js +30 -0
  803. package/src/utils/plugins/output.d.ts +6 -0
  804. package/src/utils/plugins/output.js +111 -0
  805. package/src/utils/plugins/plugin-capabilities.d.ts +14 -0
  806. package/src/utils/plugins/plugin-capabilities.js +77 -0
  807. package/src/utils/powerpack.d.ts +5 -0
  808. package/src/utils/powerpack.js +33 -0
  809. package/src/utils/print-help.d.ts +11 -0
  810. package/src/utils/print-help.js +264 -0
  811. package/src/utils/project-graph-utils.d.ts +13 -0
  812. package/src/utils/project-graph-utils.js +73 -0
  813. package/src/utils/promised-based-queue.d.ts +6 -0
  814. package/src/utils/promised-based-queue.js +43 -0
  815. package/src/utils/serializable-error.d.ts +4 -0
  816. package/src/utils/serializable-error.js +33 -0
  817. package/src/utils/serialize-overrides-into-command-line.d.ts +3 -0
  818. package/src/utils/serialize-overrides-into-command-line.js +42 -0
  819. package/src/utils/serialize-target.d.ts +1 -0
  820. package/src/utils/serialize-target.js +6 -0
  821. package/src/utils/split-target.d.ts +3 -0
  822. package/src/utils/split-target.js +48 -0
  823. package/src/utils/strip-indents.d.ts +14 -0
  824. package/src/utils/strip-indents.js +23 -0
  825. package/src/utils/sync-generators.d.ts +64 -0
  826. package/src/utils/sync-generators.js +353 -0
  827. package/src/utils/task-history.d.ts +17 -0
  828. package/src/utils/task-history.js +51 -0
  829. package/src/utils/update-nxw.d.ts +2 -0
  830. package/src/utils/update-nxw.js +11 -0
  831. package/src/utils/versions.d.ts +1 -0
  832. package/src/utils/versions.js +4 -0
  833. package/src/utils/workspace-configuration-check.d.ts +1 -0
  834. package/src/utils/workspace-configuration-check.js +36 -0
  835. package/src/utils/workspace-context.d.ts +19 -0
  836. package/src/utils/workspace-context.js +103 -0
  837. package/src/utils/workspace-root.d.ts +6 -0
  838. package/src/utils/workspace-root.js +39 -0
  839. package/tasks-runners/default.d.ts +1 -0
  840. package/tasks-runners/default.js +5 -0
@@ -0,0 +1,357 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getCachedSyncGeneratorChanges = getCachedSyncGeneratorChanges;
4
+ exports.flushSyncGeneratorChangesToDisk = flushSyncGeneratorChangesToDisk;
5
+ exports.collectAndScheduleSyncGenerators = collectAndScheduleSyncGenerators;
6
+ exports.getCachedRegisteredSyncGenerators = getCachedRegisteredSyncGenerators;
7
+ exports._getConflictingGeneratorGroups = _getConflictingGeneratorGroups;
8
+ const nx_json_1 = require("../../config/nx-json");
9
+ const tree_1 = require("../../generators/tree");
10
+ const file_hasher_1 = require("../../hasher/file-hasher");
11
+ const project_graph_1 = require("../../project-graph/project-graph");
12
+ const sync_generators_1 = require("../../utils/sync-generators");
13
+ const workspace_root_1 = require("../../utils/workspace-root");
14
+ const logger_1 = require("./logger");
15
+ const project_graph_incremental_recomputation_1 = require("./project-graph-incremental-recomputation");
16
+ const syncGeneratorsCacheResultPromises = new Map();
17
+ let registeredTaskSyncGenerators = new Set();
18
+ let registeredGlobalSyncGenerators = new Set();
19
+ const scheduledGenerators = new Set();
20
+ let waitPeriod = 100;
21
+ let registeredSyncGenerators;
22
+ let scheduledTimeoutId;
23
+ let storedProjectGraphHash;
24
+ let storedNxJsonHash;
25
+ let storedDisabledTaskSyncGeneratorsHash;
26
+ const log = (...messageParts) => {
27
+ logger_1.serverLogger.log('[SYNC]:', ...messageParts);
28
+ };
29
+ async function getCachedSyncGeneratorChanges(generators) {
30
+ try {
31
+ log('get sync generators changes on demand', generators);
32
+ // this is invoked imperatively, so we clear any scheduled run
33
+ if (scheduledTimeoutId) {
34
+ log('clearing scheduled run');
35
+ clearTimeout(scheduledTimeoutId);
36
+ scheduledTimeoutId = undefined;
37
+ }
38
+ // reset the wait time
39
+ waitPeriod = 100;
40
+ const results = await getFromCacheOrRunGenerators(generators);
41
+ const conflicts = _getConflictingGeneratorGroups(results);
42
+ if (!conflicts.length) {
43
+ // there are no conflicts
44
+ return results;
45
+ }
46
+ // there are conflicts, so we need to re-run the conflicting generators
47
+ // using the same tree
48
+ return await processConflictingGenerators(conflicts, results);
49
+ }
50
+ catch (e) {
51
+ console.error(e);
52
+ syncGeneratorsCacheResultPromises.clear();
53
+ return [];
54
+ }
55
+ }
56
+ async function flushSyncGeneratorChangesToDisk(generators) {
57
+ log('flush sync generators changes', generators);
58
+ const results = await getCachedSyncGeneratorChanges(generators);
59
+ for (const generator of generators) {
60
+ syncGeneratorsCacheResultPromises.delete(generator);
61
+ }
62
+ return await (0, sync_generators_1.flushSyncGeneratorChanges)(results);
63
+ }
64
+ function collectAndScheduleSyncGenerators(projectGraph) {
65
+ if (!projectGraph) {
66
+ // If the project graph is not available, we can't collect and schedule
67
+ // sync generators. The project graph error will be reported separately.
68
+ return;
69
+ }
70
+ log('collect registered sync generators');
71
+ collectAllRegisteredSyncGenerators(projectGraph);
72
+ // a change imply we need to re-run all the generators
73
+ // make sure to schedule all the collected generators
74
+ scheduledGenerators.clear();
75
+ if (!registeredSyncGenerators.globalGenerators.size &&
76
+ !registeredSyncGenerators.taskGenerators.size) {
77
+ // there are no generators to run
78
+ return;
79
+ }
80
+ const uniqueSyncGenerators = new Set([
81
+ ...registeredSyncGenerators.globalGenerators,
82
+ ...registeredSyncGenerators.taskGenerators,
83
+ ]);
84
+ for (const generator of uniqueSyncGenerators) {
85
+ scheduledGenerators.add(generator);
86
+ }
87
+ log('scheduling:', [...scheduledGenerators]);
88
+ if (scheduledTimeoutId) {
89
+ // we have a scheduled run already, so we don't need to do anything
90
+ return;
91
+ }
92
+ scheduledTimeoutId = setTimeout(async () => {
93
+ scheduledTimeoutId = undefined;
94
+ if (waitPeriod < 4000) {
95
+ waitPeriod = waitPeriod * 2;
96
+ }
97
+ if (scheduledGenerators.size === 0) {
98
+ // no generators to run
99
+ return;
100
+ }
101
+ const { projects } = (0, project_graph_1.readProjectsConfigurationFromProjectGraph)(projectGraph);
102
+ for (const generator of scheduledGenerators) {
103
+ syncGeneratorsCacheResultPromises.set(generator, runGenerator(generator, projects));
104
+ }
105
+ await Promise.all(syncGeneratorsCacheResultPromises.values());
106
+ }, waitPeriod);
107
+ }
108
+ async function getCachedRegisteredSyncGenerators() {
109
+ log('get registered sync generators');
110
+ if (!registeredGlobalSyncGenerators && !registeredTaskSyncGenerators) {
111
+ log('no registered sync generators, collecting them');
112
+ const { projectGraph } = await (0, project_graph_incremental_recomputation_1.getCachedSerializedProjectGraphPromise)();
113
+ collectAllRegisteredSyncGenerators(projectGraph);
114
+ }
115
+ else {
116
+ log('registered sync generators already collected, returning them');
117
+ }
118
+ return {
119
+ globalGenerators: [...registeredGlobalSyncGenerators],
120
+ taskGenerators: [...registeredTaskSyncGenerators],
121
+ };
122
+ }
123
+ async function getFromCacheOrRunGenerators(generators) {
124
+ let projects;
125
+ let errored = false;
126
+ const getProjectsConfigurations = async () => {
127
+ if (projects || errored) {
128
+ return projects;
129
+ }
130
+ const { projectGraph, error } = await (0, project_graph_incremental_recomputation_1.getCachedSerializedProjectGraphPromise)();
131
+ projects = projectGraph
132
+ ? (0, project_graph_1.readProjectsConfigurationFromProjectGraph)(projectGraph).projects
133
+ : null;
134
+ errored = error !== undefined;
135
+ return projects;
136
+ };
137
+ return (await Promise.all(generators.map(async (generator) => {
138
+ if (scheduledGenerators.has(generator) ||
139
+ !syncGeneratorsCacheResultPromises.has(generator)) {
140
+ // it's scheduled to run (there are pending changes to process) or
141
+ // it's not scheduled and there's no cached result, so run it
142
+ const projects = await getProjectsConfigurations();
143
+ if (projects) {
144
+ log(generator, 'already scheduled or not cached, running it now');
145
+ syncGeneratorsCacheResultPromises.set(generator, runGenerator(generator, projects));
146
+ }
147
+ else {
148
+ log(generator, 'already scheduled or not cached, project graph errored');
149
+ /**
150
+ * This should never happen. This is invoked imperatively, and by
151
+ * the time it is invoked, the project graph would have already
152
+ * been requested. If it errored, it would have been reported and
153
+ * this wouldn't have been invoked. We handle it just in case.
154
+ *
155
+ * Since the project graph would be reported by the relevant
156
+ * handlers separately, we just ignore the error, don't cache
157
+ * any result and return an empty result, the next time this is
158
+ * invoked the process will repeat until it eventually recovers
159
+ * when the project graph is fixed.
160
+ */
161
+ return Promise.resolve({ changes: [], generatorName: generator });
162
+ }
163
+ }
164
+ else {
165
+ log(generator, 'not scheduled and has cached result, returning cached result');
166
+ }
167
+ return syncGeneratorsCacheResultPromises.get(generator);
168
+ }))).flat();
169
+ }
170
+ async function runConflictingGenerators(tree, generators) {
171
+ const { projectGraph } = await (0, project_graph_incremental_recomputation_1.getCachedSerializedProjectGraphPromise)();
172
+ const projects = projectGraph
173
+ ? (0, project_graph_1.readProjectsConfigurationFromProjectGraph)(projectGraph).projects
174
+ : null;
175
+ if (!projects) {
176
+ /**
177
+ * This should never happen. This is invoked imperatively, and by
178
+ * the time it is invoked, the project graph would have already
179
+ * been requested. If it errored, it would have been reported and
180
+ * this wouldn't have been invoked. We handle it just in case.
181
+ *
182
+ * Since the project graph would be reported by the relevant
183
+ * handlers separately, we just ignore the error.
184
+ */
185
+ return generators.map((generator) => ({
186
+ changes: [],
187
+ generatorName: generator,
188
+ }));
189
+ }
190
+ // we need to run conflicting generators sequentially because they use the same tree
191
+ const results = [];
192
+ for (const generator of generators) {
193
+ log(generator, 'running it now');
194
+ results.push(await runGenerator(generator, projects, tree));
195
+ }
196
+ return results;
197
+ }
198
+ async function processConflictingGenerators(conflicts, initialResults) {
199
+ const conflictRunResults = (await Promise.all(conflicts.map((generators) => {
200
+ const [firstGenerator, ...generatorsToRun] = generators;
201
+ // it must exists because the conflicts were identified from the initial results
202
+ // and it's guaranteed to be a success result
203
+ const firstGeneratorResult = initialResults.find((r) => r.generatorName === firstGenerator);
204
+ const tree = new tree_1.FsTree(workspace_root_1.workspaceRoot, false, `running sync generators ${generators.join(',')}`);
205
+ // pre-apply the changes from the first generator to avoid running it
206
+ for (const change of firstGeneratorResult.changes) {
207
+ if (change.type === 'CREATE' || change.type === 'UPDATE') {
208
+ tree.write(change.path, change.content, change.options);
209
+ }
210
+ else if (change.type === 'DELETE') {
211
+ tree.delete(change.path);
212
+ }
213
+ }
214
+ /**
215
+ * We don't cache the results of conflicting generators because they
216
+ * use the same tree, so some files might contain results from multiple
217
+ * generators and we don't have guarantees that the same combination of
218
+ * generators will run together.
219
+ */
220
+ return runConflictingGenerators(tree, generatorsToRun);
221
+ }))).flat();
222
+ /**
223
+ * The order of the results from the re-run generators is important because
224
+ * the last result from a group of conflicting generators will contain the
225
+ * changes from the previous conflicting generators. So, instead of replacing
226
+ * in-place the initial results, we first add the results from the re-run
227
+ * generators, and then add the initial results that were not from a
228
+ * conflicting generator.
229
+ */
230
+ const results = [...conflictRunResults];
231
+ for (const result of initialResults) {
232
+ if (conflictRunResults.every((r) => r.generatorName !== result.generatorName)) {
233
+ // this result is not from a conflicting generator, so we add it to the
234
+ // results
235
+ results.push(result);
236
+ }
237
+ }
238
+ return results;
239
+ }
240
+ /**
241
+ * @internal
242
+ */
243
+ function _getConflictingGeneratorGroups(results) {
244
+ const changedFileToGeneratorMap = new Map();
245
+ for (const result of results) {
246
+ if ('error' in result) {
247
+ continue;
248
+ }
249
+ for (const change of result.changes) {
250
+ if (!changedFileToGeneratorMap.has(change.path)) {
251
+ changedFileToGeneratorMap.set(change.path, new Set());
252
+ }
253
+ changedFileToGeneratorMap.get(change.path).add(result.generatorName);
254
+ }
255
+ }
256
+ const conflicts = [];
257
+ for (const generatorSet of changedFileToGeneratorMap.values()) {
258
+ if (generatorSet.size === 1) {
259
+ // no conflicts
260
+ continue;
261
+ }
262
+ if (conflicts.length === 0) {
263
+ // there are no conflicts yet, so we just add the first group
264
+ conflicts.push(new Set(generatorSet));
265
+ continue;
266
+ }
267
+ // identify if any of the current generator sets intersect with any of the
268
+ // existing conflict groups
269
+ const generatorsArray = Array.from(generatorSet);
270
+ const existingConflictGroup = conflicts.find((group) => generatorsArray.some((generator) => group.has(generator)));
271
+ if (existingConflictGroup) {
272
+ // there's an intersecting group, so we merge the two
273
+ for (const generator of generatorsArray) {
274
+ existingConflictGroup.add(generator);
275
+ }
276
+ }
277
+ else {
278
+ // there's no intersecting group, so we create a new one
279
+ conflicts.push(new Set(generatorsArray));
280
+ }
281
+ }
282
+ return conflicts.map((group) => Array.from(group));
283
+ }
284
+ function collectAllRegisteredSyncGenerators(projectGraph) {
285
+ const nxJson = (0, nx_json_1.readNxJson)();
286
+ const projectGraphHash = hashProjectGraph(projectGraph);
287
+ const disabledTaskSyncGeneratorsHash = (0, file_hasher_1.hashArray)(nxJson.sync?.disabledTaskSyncGenerators?.sort() ?? []);
288
+ if (projectGraphHash !== storedProjectGraphHash ||
289
+ disabledTaskSyncGeneratorsHash !== storedDisabledTaskSyncGeneratorsHash) {
290
+ storedProjectGraphHash = projectGraphHash;
291
+ storedDisabledTaskSyncGeneratorsHash = disabledTaskSyncGeneratorsHash;
292
+ registeredTaskSyncGenerators =
293
+ (0, sync_generators_1.collectEnabledTaskSyncGeneratorsFromProjectGraph)(projectGraph, nxJson);
294
+ }
295
+ else {
296
+ log('project graph hash is the same, not collecting task sync generators');
297
+ }
298
+ const nxJsonHash = (0, file_hasher_1.hashArray)(nxJson.sync?.globalGenerators?.sort() ?? []);
299
+ if (storedNxJsonHash !== nxJsonHash) {
300
+ storedNxJsonHash = nxJsonHash;
301
+ registeredGlobalSyncGenerators =
302
+ (0, sync_generators_1.collectRegisteredGlobalSyncGenerators)(nxJson);
303
+ }
304
+ else {
305
+ log('nx.json hash is the same, not collecting global sync generators');
306
+ }
307
+ if (!registeredSyncGenerators) {
308
+ registeredSyncGenerators = {
309
+ globalGenerators: registeredGlobalSyncGenerators,
310
+ taskGenerators: registeredTaskSyncGenerators,
311
+ };
312
+ return;
313
+ }
314
+ for (const generator of registeredSyncGenerators.globalGenerators) {
315
+ if (!registeredGlobalSyncGenerators.has(generator)) {
316
+ registeredSyncGenerators.globalGenerators.delete(generator);
317
+ syncGeneratorsCacheResultPromises.delete(generator);
318
+ }
319
+ }
320
+ for (const generator of registeredSyncGenerators.taskGenerators) {
321
+ if (!registeredTaskSyncGenerators.has(generator)) {
322
+ registeredSyncGenerators.taskGenerators.delete(generator);
323
+ syncGeneratorsCacheResultPromises.delete(generator);
324
+ }
325
+ }
326
+ for (const generator of registeredGlobalSyncGenerators) {
327
+ if (!registeredSyncGenerators.globalGenerators.has(generator)) {
328
+ registeredSyncGenerators.globalGenerators.add(generator);
329
+ }
330
+ }
331
+ for (const generator of registeredTaskSyncGenerators) {
332
+ if (!registeredSyncGenerators.taskGenerators.has(generator)) {
333
+ registeredSyncGenerators.taskGenerators.add(generator);
334
+ }
335
+ }
336
+ }
337
+ function runGenerator(generator, projects, tree) {
338
+ log('running scheduled generator', generator);
339
+ // remove it from the scheduled set
340
+ scheduledGenerators.delete(generator);
341
+ tree ??= new tree_1.FsTree(workspace_root_1.workspaceRoot, false, `running sync generator ${generator}`);
342
+ return (0, sync_generators_1.runSyncGenerator)(tree, generator, projects).then((result) => {
343
+ if ('error' in result) {
344
+ log(generator, 'error:', result.error.message);
345
+ }
346
+ else {
347
+ log(generator, 'changes:', result.changes.map((c) => c.path).join(', '));
348
+ }
349
+ return result;
350
+ });
351
+ }
352
+ function hashProjectGraph(projectGraph) {
353
+ const stringifiedProjects = Object.entries(projectGraph.nodes)
354
+ .sort(([projectNameA], [projectNameB]) => projectNameA.localeCompare(projectNameB))
355
+ .map(([projectName, projectConfig]) => `${projectName}:${JSON.stringify(projectConfig)}`);
356
+ return (0, file_hasher_1.hashArray)(stringifiedProjects);
357
+ }
@@ -0,0 +1,11 @@
1
+ import { Server } from 'net';
2
+ import type { WatchEvent } from '../../native';
3
+ export type FileWatcherCallback = (err: Error | string | null, changeEvents: WatchEvent[] | null) => Promise<void>;
4
+ export declare function watchWorkspace(server: Server, cb: FileWatcherCallback): Promise<import("../../native").Watcher>;
5
+ export declare function watchOutputFiles(server: Server, cb: FileWatcherCallback): Promise<import("../../native").Watcher>;
6
+ /**
7
+ * NOTE: An event type of "create" will also apply to the case where the user has restored
8
+ * an original version of a file after modifying/deleting it by using git, so we adjust
9
+ * our log language accordingly.
10
+ */
11
+ export declare function convertChangeEventsToLogMessage(changeEvents: WatchEvent[]): string;
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.watchWorkspace = watchWorkspace;
4
+ exports.watchOutputFiles = watchOutputFiles;
5
+ exports.convertChangeEventsToLogMessage = convertChangeEventsToLogMessage;
6
+ const workspace_root_1 = require("../../utils/workspace-root");
7
+ const path_1 = require("path");
8
+ const socket_utils_1 = require("../socket-utils");
9
+ const shutdown_utils_1 = require("./shutdown-utils");
10
+ const path_2 = require("../../utils/path");
11
+ const ignore_1 = require("../../utils/ignore");
12
+ const cache_1 = require("../cache");
13
+ const server_1 = require("./server");
14
+ const ALWAYS_IGNORE = [
15
+ ...(0, ignore_1.getAlwaysIgnore)(workspace_root_1.workspaceRoot),
16
+ (0, socket_utils_1.getFullOsSocketPath)(),
17
+ ];
18
+ async function watchWorkspace(server, cb) {
19
+ const { Watcher } = await Promise.resolve().then(() => require('../../native'));
20
+ const watcher = new Watcher(workspace_root_1.workspaceRoot);
21
+ watcher.watch((err, events) => {
22
+ if (err) {
23
+ return cb(err, null);
24
+ }
25
+ for (const event of events) {
26
+ if (event.path.endsWith('.gitignore') || event.path === '.nxignore') {
27
+ // If the ignore files themselves have changed we need to dynamically update our cached ignoreGlobs
28
+ (0, shutdown_utils_1.handleServerProcessTermination)({
29
+ server,
30
+ reason: 'Stopping the daemon the set of ignored files changed (native)',
31
+ sockets: server_1.openSockets,
32
+ });
33
+ }
34
+ }
35
+ cb(null, events);
36
+ });
37
+ return watcher;
38
+ }
39
+ async function watchOutputFiles(server, cb) {
40
+ const { Watcher } = await Promise.resolve().then(() => require('../../native'));
41
+ const relativeServerProcess = (0, path_2.normalizePath)((0, path_1.relative)(workspace_root_1.workspaceRoot, cache_1.serverProcessJsonPath));
42
+ const watcher = new Watcher(workspace_root_1.workspaceRoot, [`!${relativeServerProcess}`], false);
43
+ watcher.watch((err, events) => {
44
+ if (err) {
45
+ return cb(err, null);
46
+ }
47
+ for (const event of events) {
48
+ if (event.path == relativeServerProcess &&
49
+ (0, cache_1.getDaemonProcessIdSync)() !== process.pid) {
50
+ return (0, shutdown_utils_1.handleServerProcessTermination)({
51
+ server,
52
+ reason: 'this process is no longer the current daemon (native)',
53
+ sockets: server_1.openSockets,
54
+ });
55
+ }
56
+ }
57
+ if (events.length !== 0) {
58
+ cb(null, events);
59
+ }
60
+ });
61
+ return watcher;
62
+ }
63
+ /**
64
+ * NOTE: An event type of "create" will also apply to the case where the user has restored
65
+ * an original version of a file after modifying/deleting it by using git, so we adjust
66
+ * our log language accordingly.
67
+ */
68
+ function convertChangeEventsToLogMessage(changeEvents) {
69
+ // If only a single file was changed, show the information inline
70
+ if (changeEvents.length === 1) {
71
+ const { path, type } = changeEvents[0];
72
+ let typeLog = 'updated';
73
+ switch (type) {
74
+ case 'create':
75
+ typeLog = 'created or restored';
76
+ break;
77
+ case 'update':
78
+ typeLog = 'modified';
79
+ break;
80
+ case 'delete':
81
+ typeLog = 'deleted';
82
+ break;
83
+ }
84
+ return `${path} was ${typeLog}`;
85
+ }
86
+ let numCreatedOrRestoredFiles = 0;
87
+ let numModifiedFiles = 0;
88
+ let numDeletedFiles = 0;
89
+ for (const event of changeEvents) {
90
+ switch (event.type) {
91
+ case 'create':
92
+ numCreatedOrRestoredFiles++;
93
+ break;
94
+ case 'update':
95
+ numModifiedFiles++;
96
+ break;
97
+ case 'delete':
98
+ numDeletedFiles++;
99
+ break;
100
+ }
101
+ }
102
+ return `${numCreatedOrRestoredFiles} file(s) created or restored, ${numModifiedFiles} file(s) modified, ${numDeletedFiles} file(s) deleted`;
103
+ }
@@ -0,0 +1,12 @@
1
+ export declare const isWindows: boolean;
2
+ /**
3
+ * For IPC with the daemon server we use unix sockets or windows named pipes, depending on the user's operating system.
4
+ *
5
+ * See https://nodejs.org/dist/latest-v14.x/docs/api/net.html#net_identifying_paths_for_ipc_connections for a full breakdown
6
+ * of OS differences between Unix domain sockets and named pipes.
7
+ */
8
+ export declare const getFullOsSocketPath: () => string;
9
+ export declare const getForkedProcessOsSocketPath: (id: string) => string;
10
+ export declare const getPluginOsSocketPath: (id: string) => string;
11
+ export declare function killSocketOrPath(): void;
12
+ export declare function serializeResult(error: Error | null, serializedProjectGraph: string | null, serializedSourceMaps: string | null): string | null;
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getPluginOsSocketPath = exports.getForkedProcessOsSocketPath = exports.getFullOsSocketPath = exports.isWindows = void 0;
4
+ exports.killSocketOrPath = killSocketOrPath;
5
+ exports.serializeResult = serializeResult;
6
+ const fs_1 = require("fs");
7
+ const os_1 = require("os");
8
+ const path_1 = require("path");
9
+ const tmp_dir_1 = require("./tmp-dir");
10
+ const serializable_error_1 = require("../utils/serializable-error");
11
+ exports.isWindows = (0, os_1.platform)() === 'win32';
12
+ /**
13
+ * For IPC with the daemon server we use unix sockets or windows named pipes, depending on the user's operating system.
14
+ *
15
+ * See https://nodejs.org/dist/latest-v14.x/docs/api/net.html#net_identifying_paths_for_ipc_connections for a full breakdown
16
+ * of OS differences between Unix domain sockets and named pipes.
17
+ */
18
+ const getFullOsSocketPath = () => {
19
+ const path = (0, path_1.resolve)((0, tmp_dir_1.getDaemonSocketDir)());
20
+ assertValidSocketPath(path);
21
+ return exports.isWindows ? '\\\\.\\pipe\\nx\\' + path : path;
22
+ };
23
+ exports.getFullOsSocketPath = getFullOsSocketPath;
24
+ const getForkedProcessOsSocketPath = (id) => {
25
+ let path = (0, path_1.resolve)((0, path_1.join)((0, tmp_dir_1.getSocketDir)(), 'fp' + id + '.sock'));
26
+ assertValidSocketPath(path);
27
+ return exports.isWindows ? '\\\\.\\pipe\\nx\\' + path : path;
28
+ };
29
+ exports.getForkedProcessOsSocketPath = getForkedProcessOsSocketPath;
30
+ const getPluginOsSocketPath = (id) => {
31
+ let path = (0, path_1.resolve)((0, path_1.join)((0, tmp_dir_1.getSocketDir)(true), 'plugin' + id + '.sock'));
32
+ assertValidSocketPath(path);
33
+ return exports.isWindows ? '\\\\.\\pipe\\nx\\' + path : path;
34
+ };
35
+ exports.getPluginOsSocketPath = getPluginOsSocketPath;
36
+ function assertValidSocketPath(path) {
37
+ if (path.length > 95) {
38
+ throw new Error([
39
+ 'Attempted to open socket that exceeds the maximum socket length.',
40
+ '',
41
+ `Set NX_SOCKET_DIR to a shorter path (e.g. ${exports.isWindows ? '%TMP%/nx-tmp' : '/tmp/nx-tmp'}) to avoid this issue.`,
42
+ ].join('\n'));
43
+ }
44
+ }
45
+ function killSocketOrPath() {
46
+ try {
47
+ (0, fs_1.unlinkSync)((0, exports.getFullOsSocketPath)());
48
+ }
49
+ catch { }
50
+ }
51
+ // Prepare a serialized project graph result for sending over IPC from the server to the client
52
+ function serializeResult(error, serializedProjectGraph, serializedSourceMaps) {
53
+ // We do not want to repeat work `JSON.stringify`ing an object containing the potentially large project graph so merge as strings
54
+ return `{ "error": ${JSON.stringify(error ? (0, serializable_error_1.createSerializableError)(error) : error)}, "projectGraph": ${serializedProjectGraph}, "sourceMaps": ${serializedSourceMaps} }`;
55
+ }
@@ -0,0 +1,12 @@
1
+ export declare const DAEMON_DIR_FOR_CURRENT_WORKSPACE: string;
2
+ export declare const DAEMON_OUTPUT_LOG_FILE: string;
3
+ export declare const getDaemonSocketDir: () => string;
4
+ export declare function writeDaemonLogs(error?: string): string;
5
+ export declare function markDaemonAsDisabled(): void;
6
+ export declare function isDaemonDisabled(): boolean;
7
+ /**
8
+ * We try to create a socket file in a tmp dir, but if it doesn't work because
9
+ * for instance we don't have permissions, we create it in DAEMON_DIR_FOR_CURRENT_WORKSPACE
10
+ */
11
+ export declare function getSocketDir(alreadyUnique?: boolean): string;
12
+ export declare function removeSocketDir(): void;
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getDaemonSocketDir = exports.DAEMON_OUTPUT_LOG_FILE = exports.DAEMON_DIR_FOR_CURRENT_WORKSPACE = void 0;
4
+ exports.writeDaemonLogs = writeDaemonLogs;
5
+ exports.markDaemonAsDisabled = markDaemonAsDisabled;
6
+ exports.isDaemonDisabled = isDaemonDisabled;
7
+ exports.getSocketDir = getSocketDir;
8
+ exports.removeSocketDir = removeSocketDir;
9
+ /**
10
+ * Per workspace (to avoid subtle differences and issues), we want to have a deterministic
11
+ * location within the OS's tmp directory where we write log files for background processes
12
+ * and where we create the actual unix socket/named pipe for the daemon.
13
+ */
14
+ const node_fs_1 = require("node:fs");
15
+ const path_1 = require("path");
16
+ const cache_directory_1 = require("../utils/cache-directory");
17
+ const crypto_1 = require("crypto");
18
+ const tmp_1 = require("tmp");
19
+ const workspace_root_1 = require("../utils/workspace-root");
20
+ exports.DAEMON_DIR_FOR_CURRENT_WORKSPACE = (0, path_1.join)(cache_directory_1.workspaceDataDirectory, 'd');
21
+ exports.DAEMON_OUTPUT_LOG_FILE = (0, path_1.join)(exports.DAEMON_DIR_FOR_CURRENT_WORKSPACE, 'daemon.log');
22
+ const getDaemonSocketDir = () => (0, path_1.join)(getSocketDir(),
23
+ // As per notes above on socket/named pipe length limitations, we keep this intentionally short
24
+ 'd.sock');
25
+ exports.getDaemonSocketDir = getDaemonSocketDir;
26
+ function writeDaemonLogs(error) {
27
+ const file = (0, path_1.join)(exports.DAEMON_DIR_FOR_CURRENT_WORKSPACE, 'daemon-error.log');
28
+ (0, node_fs_1.writeFileSync)(file, error);
29
+ return file;
30
+ }
31
+ function markDaemonAsDisabled() {
32
+ (0, node_fs_1.writeFileSync)((0, path_1.join)(exports.DAEMON_DIR_FOR_CURRENT_WORKSPACE, 'disabled'), 'true');
33
+ }
34
+ function isDaemonDisabled() {
35
+ try {
36
+ (0, node_fs_1.statSync)((0, path_1.join)(exports.DAEMON_DIR_FOR_CURRENT_WORKSPACE, 'disabled'));
37
+ return true;
38
+ }
39
+ catch (e) {
40
+ return false;
41
+ }
42
+ }
43
+ function socketDirName() {
44
+ const hasher = (0, crypto_1.createHash)('sha256');
45
+ hasher.update(workspace_root_1.workspaceRoot.toLowerCase());
46
+ const unique = hasher.digest('hex').substring(0, 20);
47
+ return (0, path_1.join)(tmp_1.tmpdir, unique);
48
+ }
49
+ /**
50
+ * We try to create a socket file in a tmp dir, but if it doesn't work because
51
+ * for instance we don't have permissions, we create it in DAEMON_DIR_FOR_CURRENT_WORKSPACE
52
+ */
53
+ function getSocketDir(alreadyUnique = false) {
54
+ try {
55
+ const dir = process.env.NX_SOCKET_DIR ??
56
+ process.env.NX_DAEMON_SOCKET_DIR ??
57
+ (alreadyUnique ? tmp_1.tmpdir : socketDirName());
58
+ (0, node_fs_1.mkdirSync)(dir, { recursive: true });
59
+ return dir;
60
+ }
61
+ catch (e) {
62
+ return exports.DAEMON_DIR_FOR_CURRENT_WORKSPACE;
63
+ }
64
+ }
65
+ function removeSocketDir() {
66
+ try {
67
+ (0, node_fs_1.rmSync)(getSocketDir(), { recursive: true, force: true });
68
+ }
69
+ catch (e) { }
70
+ }