nx 0.0.0-pr-22179-271588f

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 (689) hide show
  1. package/.eslintrc.json +106 -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 +175 -0
  6. package/bin/nx-cloud.d.ts +2 -0
  7. package/bin/nx-cloud.js +55 -0
  8. package/bin/nx.d.ts +2 -0
  9. package/bin/nx.js +230 -0
  10. package/bin/post-install.d.ts +1 -0
  11. package/bin/post-install.js +55 -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 +99 -0
  17. package/package.json +186 -0
  18. package/plugins/package-json.d.ts +1 -0
  19. package/plugins/package-json.js +12 -0
  20. package/presets/core.json +1 -0
  21. package/presets/npm.json +7 -0
  22. package/release/changelog-renderer/index.d.ts +56 -0
  23. package/release/changelog-renderer/index.js +238 -0
  24. package/release/index.d.ts +4 -0
  25. package/release/index.js +11 -0
  26. package/schemas/nx-schema.json +641 -0
  27. package/schemas/project-schema.json +264 -0
  28. package/schemas/workspace-schema.json +185 -0
  29. package/src/adapter/angular-json.d.ts +10 -0
  30. package/src/adapter/angular-json.js +128 -0
  31. package/src/adapter/compat.d.ts +2 -0
  32. package/src/adapter/compat.js +138 -0
  33. package/src/adapter/decorate-cli.d.ts +1 -0
  34. package/src/adapter/decorate-cli.js +25 -0
  35. package/src/adapter/ngcli-adapter.d.ts +90 -0
  36. package/src/adapter/ngcli-adapter.js +848 -0
  37. package/src/adapter/rxjs-for-await.d.ts +109 -0
  38. package/src/adapter/rxjs-for-await.js +362 -0
  39. package/src/command-line/add/add.d.ts +2 -0
  40. package/src/command-line/add/add.js +169 -0
  41. package/src/command-line/add/command-object.d.ts +7 -0
  42. package/src/command-line/add/command-object.js +24 -0
  43. package/src/command-line/affected/affected.d.ts +7 -0
  44. package/src/command-line/affected/affected.js +105 -0
  45. package/src/command-line/affected/command-object.d.ts +16 -0
  46. package/src/command-line/affected/command-object.js +93 -0
  47. package/src/command-line/affected/print-affected.d.ts +11 -0
  48. package/src/command-line/affected/print-affected.js +108 -0
  49. package/src/command-line/connect/command-object.d.ts +3 -0
  50. package/src/command-line/connect/command-object.js +19 -0
  51. package/src/command-line/connect/connect-to-nx-cloud.d.ts +8 -0
  52. package/src/command-line/connect/connect-to-nx-cloud.js +93 -0
  53. package/src/command-line/connect/view-logs.d.ts +1 -0
  54. package/src/command-line/connect/view-logs.js +53 -0
  55. package/src/command-line/daemon/command-object.d.ts +2 -0
  56. package/src/command-line/daemon/command-object.js +21 -0
  57. package/src/command-line/daemon/daemon.d.ts +2 -0
  58. package/src/command-line/daemon/daemon.js +27 -0
  59. package/src/command-line/examples.d.ts +5 -0
  60. package/src/command-line/examples.js +347 -0
  61. package/src/command-line/exec/command-object.d.ts +2 -0
  62. package/src/command-line/exec/command-object.js +19 -0
  63. package/src/command-line/exec/exec.d.ts +1 -0
  64. package/src/command-line/exec/exec.js +141 -0
  65. package/src/command-line/format/command-object.d.ts +3 -0
  66. package/src/command-line/format/command-object.js +46 -0
  67. package/src/command-line/format/format.d.ts +2 -0
  68. package/src/command-line/format/format.js +155 -0
  69. package/src/command-line/generate/command-object.d.ts +2 -0
  70. package/src/command-line/generate/command-object.js +70 -0
  71. package/src/command-line/generate/generate.d.ts +21 -0
  72. package/src/command-line/generate/generate.js +266 -0
  73. package/src/command-line/generate/generator-utils.d.ts +17 -0
  74. package/src/command-line/generate/generator-utils.js +87 -0
  75. package/src/command-line/graph/command-object.d.ts +2 -0
  76. package/src/command-line/graph/command-object.js +21 -0
  77. package/src/command-line/graph/graph.d.ts +39 -0
  78. package/src/command-line/graph/graph.js +661 -0
  79. package/src/command-line/init/command-object.d.ts +2 -0
  80. package/src/command-line/init/command-object.js +83 -0
  81. package/src/command-line/init/implementation/add-nx-to-monorepo.d.ts +4 -0
  82. package/src/command-line/init/implementation/add-nx-to-monorepo.js +133 -0
  83. package/src/command-line/init/implementation/add-nx-to-nest.d.ts +5 -0
  84. package/src/command-line/init/implementation/add-nx-to-nest.js +346 -0
  85. package/src/command-line/init/implementation/add-nx-to-npm-repo.d.ts +4 -0
  86. package/src/command-line/init/implementation/add-nx-to-npm-repo.js +66 -0
  87. package/src/command-line/init/implementation/angular/index.d.ts +2 -0
  88. package/src/command-line/init/implementation/angular/index.js +128 -0
  89. package/src/command-line/init/implementation/angular/integrated-workspace.d.ts +1 -0
  90. package/src/command-line/init/implementation/angular/integrated-workspace.js +10 -0
  91. package/src/command-line/init/implementation/angular/legacy-angular-versions.d.ts +2 -0
  92. package/src/command-line/init/implementation/angular/legacy-angular-versions.js +125 -0
  93. package/src/command-line/init/implementation/angular/standalone-workspace.d.ts +1 -0
  94. package/src/command-line/init/implementation/angular/standalone-workspace.js +178 -0
  95. package/src/command-line/init/implementation/angular/types.d.ts +20 -0
  96. package/src/command-line/init/implementation/angular/types.js +2 -0
  97. package/src/command-line/init/implementation/dot-nx/add-nx-scripts.d.ts +7 -0
  98. package/src/command-line/init/implementation/dot-nx/add-nx-scripts.js +91 -0
  99. package/src/command-line/init/implementation/dot-nx/nxw.d.ts +1 -0
  100. package/src/command-line/init/implementation/dot-nx/nxw.js +116 -0
  101. package/src/command-line/init/implementation/react/add-craco-commands-to-package-scripts.d.ts +1 -0
  102. package/src/command-line/init/implementation/react/add-craco-commands-to-package-scripts.js +22 -0
  103. package/src/command-line/init/implementation/react/add-vite-commands-to-package-scripts.d.ts +1 -0
  104. package/src/command-line/init/implementation/react/add-vite-commands-to-package-scripts.js +19 -0
  105. package/src/command-line/init/implementation/react/check-for-custom-webpack-setup.d.ts +1 -0
  106. package/src/command-line/init/implementation/react/check-for-custom-webpack-setup.js +18 -0
  107. package/src/command-line/init/implementation/react/check-for-uncommitted-changes.d.ts +1 -0
  108. package/src/command-line/init/implementation/react/check-for-uncommitted-changes.js +16 -0
  109. package/src/command-line/init/implementation/react/clean-up-files.d.ts +1 -0
  110. package/src/command-line/init/implementation/react/clean-up-files.js +31 -0
  111. package/src/command-line/init/implementation/react/index.d.ts +4 -0
  112. package/src/command-line/init/implementation/react/index.js +230 -0
  113. package/src/command-line/init/implementation/react/read-name-from-package-json.d.ts +1 -0
  114. package/src/command-line/init/implementation/react/read-name-from-package-json.js +17 -0
  115. package/src/command-line/init/implementation/react/rename-js-to-jsx.d.ts +1 -0
  116. package/src/command-line/init/implementation/react/rename-js-to-jsx.js +23 -0
  117. package/src/command-line/init/implementation/react/tsconfig-setup.d.ts +1 -0
  118. package/src/command-line/init/implementation/react/tsconfig-setup.js +109 -0
  119. package/src/command-line/init/implementation/react/write-craco-config.d.ts +1 -0
  120. package/src/command-line/init/implementation/react/write-craco-config.js +62 -0
  121. package/src/command-line/init/implementation/react/write-vite-config.d.ts +1 -0
  122. package/src/command-line/init/implementation/react/write-vite-config.js +38 -0
  123. package/src/command-line/init/implementation/react/write-vite-index-html.d.ts +1 -0
  124. package/src/command-line/init/implementation/react/write-vite-index-html.js +25 -0
  125. package/src/command-line/init/implementation/utils.d.ts +16 -0
  126. package/src/command-line/init/implementation/utils.js +178 -0
  127. package/src/command-line/init/init-v1.d.ts +11 -0
  128. package/src/command-line/init/init-v1.js +110 -0
  129. package/src/command-line/init/init-v2.d.ts +7 -0
  130. package/src/command-line/init/init-v2.js +189 -0
  131. package/src/command-line/list/command-object.d.ts +2 -0
  132. package/src/command-line/list/command-object.js +15 -0
  133. package/src/command-line/list/list.d.ts +13 -0
  134. package/src/command-line/list/list.js +47 -0
  135. package/src/command-line/migrate/command-object.d.ts +3 -0
  136. package/src/command-line/migrate/command-object.js +165 -0
  137. package/src/command-line/migrate/migrate.d.ts +114 -0
  138. package/src/command-line/migrate/migrate.js +1129 -0
  139. package/src/command-line/new/command-object.d.ts +2 -0
  140. package/src/command-line/new/command-object.js +25 -0
  141. package/src/command-line/new/new.d.ts +3 -0
  142. package/src/command-line/new/new.js +30 -0
  143. package/src/command-line/nx-commands.d.ts +10 -0
  144. package/src/command-line/nx-commands.js +77 -0
  145. package/src/command-line/release/changelog.d.ts +23 -0
  146. package/src/command-line/release/changelog.js +643 -0
  147. package/src/command-line/release/command-object.d.ts +47 -0
  148. package/src/command-line/release/command-object.js +256 -0
  149. package/src/command-line/release/config/config.d.ts +43 -0
  150. package/src/command-line/release/config/config.js +544 -0
  151. package/src/command-line/release/config/filter-release-groups.d.ts +13 -0
  152. package/src/command-line/release/config/filter-release-groups.js +150 -0
  153. package/src/command-line/release/index.d.ts +16 -0
  154. package/src/command-line/release/index.js +23 -0
  155. package/src/command-line/release/publish.d.ts +8 -0
  156. package/src/command-line/release/publish.js +147 -0
  157. package/src/command-line/release/release.d.ts +4 -0
  158. package/src/command-line/release/release.js +176 -0
  159. package/src/command-line/release/utils/batch-projects-by-generator-config.d.ts +7 -0
  160. package/src/command-line/release/utils/batch-projects-by-generator-config.js +37 -0
  161. package/src/command-line/release/utils/exec-command.d.ts +1 -0
  162. package/src/command-line/release/utils/exec-command.js +34 -0
  163. package/src/command-line/release/utils/git.d.ts +59 -0
  164. package/src/command-line/release/utils/git.js +319 -0
  165. package/src/command-line/release/utils/github.d.ts +23 -0
  166. package/src/command-line/release/utils/github.js +297 -0
  167. package/src/command-line/release/utils/launch-editor.d.ts +1 -0
  168. package/src/command-line/release/utils/launch-editor.js +42 -0
  169. package/src/command-line/release/utils/markdown.d.ts +6 -0
  170. package/src/command-line/release/utils/markdown.js +29 -0
  171. package/src/command-line/release/utils/print-changes.d.ts +7 -0
  172. package/src/command-line/release/utils/print-changes.js +60 -0
  173. package/src/command-line/release/utils/resolve-nx-json-error-message.d.ts +1 -0
  174. package/src/command-line/release/utils/resolve-nx-json-error-message.js +52 -0
  175. package/src/command-line/release/utils/resolve-semver-specifier.d.ts +3 -0
  176. package/src/command-line/release/utils/resolve-semver-specifier.js +69 -0
  177. package/src/command-line/release/utils/semver.d.ts +17 -0
  178. package/src/command-line/release/utils/semver.js +56 -0
  179. package/src/command-line/release/utils/shared.d.ts +39 -0
  180. package/src/command-line/release/utils/shared.js +213 -0
  181. package/src/command-line/release/version.d.ts +45 -0
  182. package/src/command-line/release/version.js +392 -0
  183. package/src/command-line/repair/command-object.d.ts +2 -0
  184. package/src/command-line/repair/command-object.js +22 -0
  185. package/src/command-line/repair/repair.d.ts +3 -0
  186. package/src/command-line/repair/repair.js +41 -0
  187. package/src/command-line/repair.d.ts +4 -0
  188. package/src/command-line/repair.js +7 -0
  189. package/src/command-line/report/command-object.d.ts +2 -0
  190. package/src/command-line/report/command-object.js +11 -0
  191. package/src/command-line/report/report.d.ts +48 -0
  192. package/src/command-line/report/report.js +232 -0
  193. package/src/command-line/reset/command-object.d.ts +2 -0
  194. package/src/command-line/reset/command-object.js +9 -0
  195. package/src/command-line/reset/reset.d.ts +1 -0
  196. package/src/command-line/reset/reset.js +23 -0
  197. package/src/command-line/run/command-object.d.ts +6 -0
  198. package/src/command-line/run/command-object.js +25 -0
  199. package/src/command-line/run/executor-utils.d.ts +7 -0
  200. package/src/command-line/run/executor-utils.js +73 -0
  201. package/src/command-line/run/run-one.d.ts +7 -0
  202. package/src/command-line/run/run-one.js +117 -0
  203. package/src/command-line/run/run.d.ts +51 -0
  204. package/src/command-line/run/run.js +172 -0
  205. package/src/command-line/run-many/command-object.d.ts +2 -0
  206. package/src/command-line/run-many/command-object.js +11 -0
  207. package/src/command-line/run-many/run-many.d.ts +10 -0
  208. package/src/command-line/run-many/run-many.js +90 -0
  209. package/src/command-line/run-many.d.ts +4 -0
  210. package/src/command-line/run-many.js +7 -0
  211. package/src/command-line/run-one.d.ts +4 -0
  212. package/src/command-line/run-one.js +7 -0
  213. package/src/command-line/run.d.ts +4 -0
  214. package/src/command-line/run.js +7 -0
  215. package/src/command-line/show/command-object.d.ts +22 -0
  216. package/src/command-line/show/command-object.js +84 -0
  217. package/src/command-line/show/show.d.ts +3 -0
  218. package/src/command-line/show/show.js +126 -0
  219. package/src/command-line/watch/command-object.d.ts +2 -0
  220. package/src/command-line/watch/command-object.js +64 -0
  221. package/src/command-line/watch/watch.d.ts +23 -0
  222. package/src/command-line/watch/watch.js +169 -0
  223. package/src/command-line/watch.d.ts +4 -0
  224. package/src/command-line/watch.js +7 -0
  225. package/src/command-line/yargs-utils/documentation.d.ts +2 -0
  226. package/src/command-line/yargs-utils/documentation.js +12 -0
  227. package/src/command-line/yargs-utils/shared-options.d.ts +90 -0
  228. package/src/command-line/yargs-utils/shared-options.js +289 -0
  229. package/src/commands-runner/command-graph.d.ts +13 -0
  230. package/src/commands-runner/command-graph.js +2 -0
  231. package/src/commands-runner/create-command-graph.d.ts +4 -0
  232. package/src/commands-runner/create-command-graph.js +44 -0
  233. package/src/commands-runner/get-command-projects.d.ts +3 -0
  234. package/src/commands-runner/get-command-projects.js +19 -0
  235. package/src/config/calculate-default-project-name.d.ts +4 -0
  236. package/src/config/calculate-default-project-name.js +42 -0
  237. package/src/config/configuration.d.ts +8 -0
  238. package/src/config/configuration.js +17 -0
  239. package/src/config/misc-interfaces.d.ts +199 -0
  240. package/src/config/misc-interfaces.js +2 -0
  241. package/src/config/nx-json.d.ts +378 -0
  242. package/src/config/nx-json.js +40 -0
  243. package/src/config/project-graph.d.ts +137 -0
  244. package/src/config/project-graph.js +37 -0
  245. package/src/config/schema-utils.d.ts +15 -0
  246. package/src/config/schema-utils.js +59 -0
  247. package/src/config/task-graph.d.ts +100 -0
  248. package/src/config/task-graph.js +2 -0
  249. package/src/config/workspace-json-project-json.d.ts +189 -0
  250. package/src/config/workspace-json-project-json.js +2 -0
  251. package/src/config/workspaces.d.ts +18 -0
  252. package/src/config/workspaces.js +35 -0
  253. package/src/core/graph/3rdpartylicenses.txt +782 -0
  254. package/src/core/graph/environment.js +1 -0
  255. package/src/core/graph/favicon.ico +0 -0
  256. package/src/core/graph/index.html +31 -0
  257. package/src/core/graph/main.js +1 -0
  258. package/src/core/graph/polyfills.js +1 -0
  259. package/src/core/graph/runtime.js +1 -0
  260. package/src/core/graph/styles.css +3 -0
  261. package/src/core/graph/styles.js +1 -0
  262. package/src/daemon/cache.d.ts +9 -0
  263. package/src/daemon/cache.js +52 -0
  264. package/src/daemon/client/client.d.ts +56 -0
  265. package/src/daemon/client/client.js +359 -0
  266. package/src/daemon/client/daemon-socket-messenger.d.ts +13 -0
  267. package/src/daemon/client/daemon-socket-messenger.js +26 -0
  268. package/src/daemon/client/exec-is-server-available.d.ts +1 -0
  269. package/src/daemon/client/exec-is-server-available.js +11 -0
  270. package/src/daemon/client/generate-help-output.d.ts +1 -0
  271. package/src/daemon/client/generate-help-output.js +26 -0
  272. package/src/daemon/server/file-watching/changed-projects.d.ts +10 -0
  273. package/src/daemon/server/file-watching/changed-projects.js +45 -0
  274. package/src/daemon/server/file-watching/file-watcher-sockets.d.ts +13 -0
  275. package/src/daemon/server/file-watching/file-watcher-sockets.js +66 -0
  276. package/src/daemon/server/handle-hash-tasks.d.ts +10 -0
  277. package/src/daemon/server/handle-hash-tasks.js +26 -0
  278. package/src/daemon/server/handle-outputs-tracking.d.ts +15 -0
  279. package/src/daemon/server/handle-outputs-tracking.js +36 -0
  280. package/src/daemon/server/handle-process-in-background.d.ts +6 -0
  281. package/src/daemon/server/handle-process-in-background.js +33 -0
  282. package/src/daemon/server/handle-request-file-data.d.ts +4 -0
  283. package/src/daemon/server/handle-request-file-data.js +13 -0
  284. package/src/daemon/server/handle-request-project-graph.d.ts +2 -0
  285. package/src/daemon/server/handle-request-project-graph.js +37 -0
  286. package/src/daemon/server/handle-request-shutdown.d.ts +6 -0
  287. package/src/daemon/server/handle-request-shutdown.js +26 -0
  288. package/src/daemon/server/logger.d.ts +18 -0
  289. package/src/daemon/server/logger.js +37 -0
  290. package/src/daemon/server/outputs-tracking.d.ts +8 -0
  291. package/src/daemon/server/outputs-tracking.js +94 -0
  292. package/src/daemon/server/project-graph-incremental-recomputation.d.ts +22 -0
  293. package/src/daemon/server/project-graph-incremental-recomputation.js +230 -0
  294. package/src/daemon/server/server.d.ts +9 -0
  295. package/src/daemon/server/server.js +303 -0
  296. package/src/daemon/server/shutdown-utils.d.ts +17 -0
  297. package/src/daemon/server/shutdown-utils.js +77 -0
  298. package/src/daemon/server/start.d.ts +1 -0
  299. package/src/daemon/server/start.js +17 -0
  300. package/src/daemon/server/watcher.d.ts +12 -0
  301. package/src/daemon/server/watcher.js +96 -0
  302. package/src/daemon/socket-utils.d.ts +11 -0
  303. package/src/daemon/socket-utils.js +42 -0
  304. package/src/daemon/tmp-dir.d.ts +8 -0
  305. package/src/daemon/tmp-dir.js +68 -0
  306. package/src/devkit-exports.d.ts +136 -0
  307. package/src/devkit-exports.js +141 -0
  308. package/src/devkit-internals.d.ts +21 -0
  309. package/src/devkit-internals.js +41 -0
  310. package/src/devkit-testing-exports.d.ts +2 -0
  311. package/src/devkit-testing-exports.js +8 -0
  312. package/src/executors/noop/noop.impl.d.ts +3 -0
  313. package/src/executors/noop/noop.impl.js +6 -0
  314. package/src/executors/noop/schema.json +10 -0
  315. package/src/executors/run-commands/run-commands.impl.d.ts +42 -0
  316. package/src/executors/run-commands/run-commands.impl.js +247 -0
  317. package/src/executors/run-commands/schema.json +150 -0
  318. package/src/executors/run-script/run-script.impl.d.ts +8 -0
  319. package/src/executors/run-script/run-script.impl.js +56 -0
  320. package/src/executors/run-script/schema.json +28 -0
  321. package/src/executors/utils/convert-nx-executor.d.ts +10 -0
  322. package/src/executors/utils/convert-nx-executor.js +82 -0
  323. package/src/generators/internal-utils/format-changed-files-with-prettier-if-available.d.ts +8 -0
  324. package/src/generators/internal-utils/format-changed-files-with-prettier-if-available.js +49 -0
  325. package/src/generators/testing-utils/create-tree-with-empty-workspace.d.ts +11 -0
  326. package/src/generators/testing-utils/create-tree-with-empty-workspace.js +46 -0
  327. package/src/generators/testing-utils/create-tree.d.ts +5 -0
  328. package/src/generators/testing-utils/create-tree.js +11 -0
  329. package/src/generators/tree.d.ts +128 -0
  330. package/src/generators/tree.js +309 -0
  331. package/src/generators/utils/glob.d.ts +11 -0
  332. package/src/generators/utils/glob.js +35 -0
  333. package/src/generators/utils/json.d.ts +28 -0
  334. package/src/generators/utils/json.js +48 -0
  335. package/src/generators/utils/nx-json.d.ts +11 -0
  336. package/src/generators/utils/nx-json.js +59 -0
  337. package/src/generators/utils/project-configuration.d.ts +42 -0
  338. package/src/generators/utils/project-configuration.js +253 -0
  339. package/src/hasher/create-task-hasher.d.ts +4 -0
  340. package/src/hasher/create-task-hasher.js +16 -0
  341. package/src/hasher/file-hasher.d.ts +2 -0
  342. package/src/hasher/file-hasher.js +19 -0
  343. package/src/hasher/hash-task.d.ts +7 -0
  344. package/src/hasher/hash-task.js +54 -0
  345. package/src/hasher/native-task-hasher-impl.d.ts +19 -0
  346. package/src/hasher/native-task-hasher-impl.js +37 -0
  347. package/src/hasher/node-task-hasher-impl.d.ts +49 -0
  348. package/src/hasher/node-task-hasher-impl.js +431 -0
  349. package/src/hasher/task-hasher.d.ts +129 -0
  350. package/src/hasher/task-hasher.js +266 -0
  351. package/src/index.d.ts +1 -0
  352. package/src/index.js +5 -0
  353. package/src/migrations/update-15-0-0/migrate-to-inputs.d.ts +2 -0
  354. package/src/migrations/update-15-0-0/migrate-to-inputs.js +102 -0
  355. package/src/migrations/update-15-0-0/prefix-outputs.d.ts +2 -0
  356. package/src/migrations/update-15-0-0/prefix-outputs.js +64 -0
  357. package/src/migrations/update-15-1-0/set-project-names.d.ts +2 -0
  358. package/src/migrations/update-15-1-0/set-project-names.js +34 -0
  359. package/src/migrations/update-15-8-2/update-nxw.d.ts +2 -0
  360. package/src/migrations/update-15-8-2/update-nxw.js +7 -0
  361. package/src/migrations/update-16-0-0/remove-nrwl-cli.d.ts +2 -0
  362. package/src/migrations/update-16-0-0/remove-nrwl-cli.js +16 -0
  363. package/src/migrations/update-16-0-0/update-depends-on-to-tokens.d.ts +2 -0
  364. package/src/migrations/update-16-0-0/update-depends-on-to-tokens.js +97 -0
  365. package/src/migrations/update-16-0-0/update-nx-cloud-runner.d.ts +2 -0
  366. package/src/migrations/update-16-0-0/update-nx-cloud-runner.js +27 -0
  367. package/src/migrations/update-16-2-0/remove-run-commands-output-path.d.ts +2 -0
  368. package/src/migrations/update-16-2-0/remove-run-commands-output-path.js +45 -0
  369. package/src/migrations/update-16-8-0/escape-dollar-sign-env-variables.d.ts +12 -0
  370. package/src/migrations/update-16-8-0/escape-dollar-sign-env-variables.js +60 -0
  371. package/src/migrations/update-16-9-0/remove-project-name-and-root-format.d.ts +2 -0
  372. package/src/migrations/update-16-9-0/remove-project-name-and-root-format.js +21 -0
  373. package/src/migrations/update-17-0-0/move-cache-directory.d.ts +2 -0
  374. package/src/migrations/update-17-0-0/move-cache-directory.js +35 -0
  375. package/src/migrations/update-17-0-0/rm-default-collection-npm-scope.d.ts +2 -0
  376. package/src/migrations/update-17-0-0/rm-default-collection-npm-scope.js +72 -0
  377. package/src/migrations/update-17-0-0/use-minimal-config-for-tasks-runner-options.d.ts +2 -0
  378. package/src/migrations/update-17-0-0/use-minimal-config-for-tasks-runner-options.js +122 -0
  379. package/src/migrations/update-17-2-0/move-default-base.d.ts +5 -0
  380. package/src/migrations/update-17-2-0/move-default-base.js +21 -0
  381. package/src/migrations/update-17-3-0/nx-release-path.d.ts +3 -0
  382. package/src/migrations/update-17-3-0/nx-release-path.js +49 -0
  383. package/src/migrations/update-17-3-0/update-nxw.d.ts +2 -0
  384. package/src/migrations/update-17-3-0/update-nxw.js +7 -0
  385. package/src/migrations/update-18-0-0/disable-crystal-for-existing-workspaces.d.ts +2 -0
  386. package/src/migrations/update-18-0-0/disable-crystal-for-existing-workspaces.js +9 -0
  387. package/src/native/assert-supported-platform.d.ts +1 -0
  388. package/src/native/assert-supported-platform.js +39 -0
  389. package/src/native/index.d.ts +192 -0
  390. package/src/native/index.js +269 -0
  391. package/src/native/transform-objects.d.ts +3 -0
  392. package/src/native/transform-objects.js +50 -0
  393. package/src/nx-cloud/debug-logger.d.ts +1 -0
  394. package/src/nx-cloud/debug-logger.js +9 -0
  395. package/src/nx-cloud/generators/connect-to-nx-cloud/connect-to-nx-cloud.d.ts +8 -0
  396. package/src/nx-cloud/generators/connect-to-nx-cloud/connect-to-nx-cloud.js +103 -0
  397. package/src/nx-cloud/generators/connect-to-nx-cloud/schema.json +27 -0
  398. package/src/nx-cloud/nx-cloud-tasks-runner-shell.d.ts +15 -0
  399. package/src/nx-cloud/nx-cloud-tasks-runner-shell.js +41 -0
  400. package/src/nx-cloud/resolution-helpers.d.ts +1 -0
  401. package/src/nx-cloud/resolution-helpers.js +20 -0
  402. package/src/nx-cloud/update-manager.d.ts +17 -0
  403. package/src/nx-cloud/update-manager.js +240 -0
  404. package/src/nx-cloud/utilities/axios.d.ts +2 -0
  405. package/src/nx-cloud/utilities/axios.js +24 -0
  406. package/src/nx-cloud/utilities/environment.d.ts +3 -0
  407. package/src/nx-cloud/utilities/environment.js +47 -0
  408. package/src/nx-cloud/utilities/get-cloud-options.d.ts +2 -0
  409. package/src/nx-cloud/utilities/get-cloud-options.js +11 -0
  410. package/src/plugins/js/hasher/hasher.d.ts +5 -0
  411. package/src/plugins/js/hasher/hasher.js +52 -0
  412. package/src/plugins/js/index.d.ts +4 -0
  413. package/src/plugins/js/index.js +96 -0
  414. package/src/plugins/js/lock-file/lock-file.d.ts +34 -0
  415. package/src/plugins/js/lock-file/lock-file.js +181 -0
  416. package/src/plugins/js/lock-file/npm-parser.d.ts +7 -0
  417. package/src/plugins/js/lock-file/npm-parser.js +463 -0
  418. package/src/plugins/js/lock-file/pnpm-parser.d.ts +7 -0
  419. package/src/plugins/js/lock-file/pnpm-parser.js +294 -0
  420. package/src/plugins/js/lock-file/project-graph-pruning.d.ts +7 -0
  421. package/src/plugins/js/lock-file/project-graph-pruning.js +155 -0
  422. package/src/plugins/js/lock-file/utils/package-json.d.ts +10 -0
  423. package/src/plugins/js/lock-file/utils/package-json.js +34 -0
  424. package/src/plugins/js/lock-file/utils/pnpm-normalizer.d.ts +38 -0
  425. package/src/plugins/js/lock-file/utils/pnpm-normalizer.js +575 -0
  426. package/src/plugins/js/lock-file/yarn-parser.d.ts +7 -0
  427. package/src/plugins/js/lock-file/yarn-parser.js +437 -0
  428. package/src/plugins/js/package-json/create-package-json.d.ts +27 -0
  429. package/src/plugins/js/package-json/create-package-json.js +207 -0
  430. package/src/plugins/js/project-graph/affected/lock-file-changes.d.ts +4 -0
  431. package/src/plugins/js/project-graph/affected/lock-file-changes.js +16 -0
  432. package/src/plugins/js/project-graph/affected/npm-packages.d.ts +4 -0
  433. package/src/plugins/js/project-graph/affected/npm-packages.js +56 -0
  434. package/src/plugins/js/project-graph/affected/touched-projects.d.ts +2 -0
  435. package/src/plugins/js/project-graph/affected/touched-projects.js +18 -0
  436. package/src/plugins/js/project-graph/affected/tsconfig-json-changes.d.ts +4 -0
  437. package/src/plugins/js/project-graph/affected/tsconfig-json-changes.js +63 -0
  438. package/src/plugins/js/project-graph/build-dependencies/build-dependencies.d.ts +6 -0
  439. package/src/plugins/js/project-graph/build-dependencies/build-dependencies.js +33 -0
  440. package/src/plugins/js/project-graph/build-dependencies/explicit-package-json-dependencies.d.ts +3 -0
  441. package/src/plugins/js/project-graph/build-dependencies/explicit-package-json-dependencies.js +82 -0
  442. package/src/plugins/js/project-graph/build-dependencies/explicit-project-dependencies.d.ts +3 -0
  443. package/src/plugins/js/project-graph/build-dependencies/explicit-project-dependencies.js +94 -0
  444. package/src/plugins/js/project-graph/build-dependencies/strip-source-code.d.ts +7 -0
  445. package/src/plugins/js/project-graph/build-dependencies/strip-source-code.js +156 -0
  446. package/src/plugins/js/project-graph/build-dependencies/target-project-locator.d.ts +32 -0
  447. package/src/plugins/js/project-graph/build-dependencies/target-project-locator.js +183 -0
  448. package/src/plugins/js/project-graph/build-dependencies/typescript-import-locator.d.ts +16 -0
  449. package/src/plugins/js/project-graph/build-dependencies/typescript-import-locator.js +120 -0
  450. package/src/plugins/js/project-graph/build-nodes/build-npm-package-nodes.d.ts +2 -0
  451. package/src/plugins/js/project-graph/build-nodes/build-npm-package-nodes.js +32 -0
  452. package/src/plugins/js/utils/config.d.ts +2 -0
  453. package/src/plugins/js/utils/config.js +65 -0
  454. package/src/plugins/js/utils/register.d.ts +151 -0
  455. package/src/plugins/js/utils/register.js +231 -0
  456. package/src/plugins/js/utils/typescript.d.ts +14 -0
  457. package/src/plugins/js/utils/typescript.js +98 -0
  458. package/src/plugins/js/versions.d.ts +1 -0
  459. package/src/plugins/js/versions.js +4 -0
  460. package/src/plugins/package-json-workspaces/create-nodes.d.ts +19 -0
  461. package/src/plugins/package-json-workspaces/create-nodes.js +123 -0
  462. package/src/plugins/package-json-workspaces/index.d.ts +2 -0
  463. package/src/plugins/package-json-workspaces/index.js +6 -0
  464. package/src/plugins/project-json/build-nodes/package-json-next-to-project-json.d.ts +3 -0
  465. package/src/plugins/project-json/build-nodes/package-json-next-to-project-json.js +48 -0
  466. package/src/plugins/project-json/build-nodes/project-json.d.ts +5 -0
  467. package/src/plugins/project-json/build-nodes/project-json.js +30 -0
  468. package/src/plugins/target-defaults/target-defaults-plugin.d.ts +67 -0
  469. package/src/plugins/target-defaults/target-defaults-plugin.js +183 -0
  470. package/src/project-graph/affected/affected-project-graph-models.d.ts +11 -0
  471. package/src/project-graph/affected/affected-project-graph-models.js +2 -0
  472. package/src/project-graph/affected/affected-project-graph.d.ts +4 -0
  473. package/src/project-graph/affected/affected-project-graph.js +83 -0
  474. package/src/project-graph/affected/locators/project-glob-changes.d.ts +2 -0
  475. package/src/project-graph/affected/locators/project-glob-changes.js +30 -0
  476. package/src/project-graph/affected/locators/workspace-json-changes.d.ts +4 -0
  477. package/src/project-graph/affected/locators/workspace-json-changes.js +47 -0
  478. package/src/project-graph/affected/locators/workspace-projects.d.ts +5 -0
  479. package/src/project-graph/affected/locators/workspace-projects.js +85 -0
  480. package/src/project-graph/build-project-graph.d.ts +14 -0
  481. package/src/project-graph/build-project-graph.js +222 -0
  482. package/src/project-graph/file-map-utils.d.ts +15 -0
  483. package/src/project-graph/file-map-utils.js +63 -0
  484. package/src/project-graph/file-utils.d.ts +31 -0
  485. package/src/project-graph/file-utils.js +181 -0
  486. package/src/project-graph/nx-deps-cache.d.ts +48 -0
  487. package/src/project-graph/nx-deps-cache.js +228 -0
  488. package/src/project-graph/operators.d.ts +12 -0
  489. package/src/project-graph/operators.js +114 -0
  490. package/src/project-graph/plugins/index.d.ts +2 -0
  491. package/src/project-graph/plugins/index.js +8 -0
  492. package/src/project-graph/plugins/internal-api.d.ts +18 -0
  493. package/src/project-graph/plugins/internal-api.js +48 -0
  494. package/src/project-graph/plugins/messaging.d.ts +94 -0
  495. package/src/project-graph/plugins/messaging.js +23 -0
  496. package/src/project-graph/plugins/plugin-pool.d.ts +4 -0
  497. package/src/project-graph/plugins/plugin-pool.js +216 -0
  498. package/src/project-graph/plugins/plugin-worker.d.ts +1 -0
  499. package/src/project-graph/plugins/plugin-worker.js +115 -0
  500. package/src/project-graph/plugins/public-api.d.ts +85 -0
  501. package/src/project-graph/plugins/public-api.js +4 -0
  502. package/src/project-graph/plugins/utils.d.ts +9 -0
  503. package/src/project-graph/plugins/utils.js +55 -0
  504. package/src/project-graph/plugins/worker-api.d.ts +26 -0
  505. package/src/project-graph/plugins/worker-api.js +177 -0
  506. package/src/project-graph/project-graph-builder.d.ts +133 -0
  507. package/src/project-graph/project-graph-builder.js +379 -0
  508. package/src/project-graph/project-graph.d.ts +48 -0
  509. package/src/project-graph/project-graph.js +188 -0
  510. package/src/project-graph/utils/build-all-workspace-files.d.ts +2 -0
  511. package/src/project-graph/utils/build-all-workspace-files.js +15 -0
  512. package/src/project-graph/utils/find-project-for-path.d.ts +20 -0
  513. package/src/project-graph/utils/find-project-for-path.js +57 -0
  514. package/src/project-graph/utils/implicit-project-dependencies.d.ts +3 -0
  515. package/src/project-graph/utils/implicit-project-dependencies.js +19 -0
  516. package/src/project-graph/utils/normalize-project-nodes.d.ts +10 -0
  517. package/src/project-graph/utils/normalize-project-nodes.js +92 -0
  518. package/src/project-graph/utils/project-configuration-utils.d.ts +53 -0
  519. package/src/project-graph/utils/project-configuration-utils.js +430 -0
  520. package/src/project-graph/utils/retrieve-workspace-files.d.ts +41 -0
  521. package/src/project-graph/utils/retrieve-workspace-files.js +111 -0
  522. package/src/tasks-runner/batch/batch-messages.d.ts +33 -0
  523. package/src/tasks-runner/batch/batch-messages.js +9 -0
  524. package/src/tasks-runner/batch/run-batch.d.ts +1 -0
  525. package/src/tasks-runner/batch/run-batch.js +77 -0
  526. package/src/tasks-runner/cache.d.ts +36 -0
  527. package/src/tasks-runner/cache.js +236 -0
  528. package/src/tasks-runner/create-task-graph.d.ts +25 -0
  529. package/src/tasks-runner/create-task-graph.js +225 -0
  530. package/src/tasks-runner/default-tasks-runner.d.ts +20 -0
  531. package/src/tasks-runner/default-tasks-runner.js +29 -0
  532. package/src/tasks-runner/fork.d.ts +1 -0
  533. package/src/tasks-runner/fork.js +23 -0
  534. package/src/tasks-runner/forked-process-task-runner.d.ts +44 -0
  535. package/src/tasks-runner/forked-process-task-runner.js +396 -0
  536. package/src/tasks-runner/init-tasks-runner.d.ts +11 -0
  537. package/src/tasks-runner/init-tasks-runner.js +57 -0
  538. package/src/tasks-runner/life-cycle.d.ts +43 -0
  539. package/src/tasks-runner/life-cycle.js +71 -0
  540. package/src/tasks-runner/life-cycles/dynamic-run-many-terminal-output-life-cycle.d.ts +25 -0
  541. package/src/tasks-runner/life-cycles/dynamic-run-many-terminal-output-life-cycle.js +342 -0
  542. package/src/tasks-runner/life-cycles/dynamic-run-one-terminal-output-life-cycle.d.ts +24 -0
  543. package/src/tasks-runner/life-cycles/dynamic-run-one-terminal-output-life-cycle.js +224 -0
  544. package/src/tasks-runner/life-cycles/empty-terminal-output-life-cycle.d.ts +5 -0
  545. package/src/tasks-runner/life-cycles/empty-terminal-output-life-cycle.js +16 -0
  546. package/src/tasks-runner/life-cycles/formatting-utils.d.ts +3 -0
  547. package/src/tasks-runner/life-cycles/formatting-utils.js +44 -0
  548. package/src/tasks-runner/life-cycles/invoke-runner-terminal-output-life-cycle.d.ts +17 -0
  549. package/src/tasks-runner/life-cycles/invoke-runner-terminal-output-life-cycle.js +67 -0
  550. package/src/tasks-runner/life-cycles/pretty-time.d.ts +4 -0
  551. package/src/tasks-runner/life-cycles/pretty-time.js +74 -0
  552. package/src/tasks-runner/life-cycles/static-run-many-terminal-output-life-cycle.d.ts +33 -0
  553. package/src/tasks-runner/life-cycles/static-run-many-terminal-output-life-cycle.js +99 -0
  554. package/src/tasks-runner/life-cycles/static-run-one-terminal-output-life-cycle.d.ts +32 -0
  555. package/src/tasks-runner/life-cycles/static-run-one-terminal-output-life-cycle.js +97 -0
  556. package/src/tasks-runner/life-cycles/store-run-information-life-cycle.d.ts +22 -0
  557. package/src/tasks-runner/life-cycles/store-run-information-life-cycle.js +87 -0
  558. package/src/tasks-runner/life-cycles/task-profiling-life-cycle.d.ts +19 -0
  559. package/src/tasks-runner/life-cycles/task-profiling-life-cycle.js +73 -0
  560. package/src/tasks-runner/life-cycles/task-timings-life-cycle.d.ts +13 -0
  561. package/src/tasks-runner/life-cycles/task-timings-life-cycle.js +39 -0
  562. package/src/tasks-runner/life-cycles/view-logs-utils.d.ts +1 -0
  563. package/src/tasks-runner/life-cycles/view-logs-utils.js +16 -0
  564. package/src/tasks-runner/psuedo-ipc.d.ts +49 -0
  565. package/src/tasks-runner/psuedo-ipc.js +140 -0
  566. package/src/tasks-runner/remove-old-cache-records.d.ts +1 -0
  567. package/src/tasks-runner/remove-old-cache-records.js +61 -0
  568. package/src/tasks-runner/run-command.d.ts +28 -0
  569. package/src/tasks-runner/run-command.js +353 -0
  570. package/src/tasks-runner/task-env.d.ts +8 -0
  571. package/src/tasks-runner/task-env.js +144 -0
  572. package/src/tasks-runner/task-graph-utils.d.ts +7 -0
  573. package/src/tasks-runner/task-graph-utils.js +55 -0
  574. package/src/tasks-runner/task-orchestrator.d.ts +50 -0
  575. package/src/tasks-runner/task-orchestrator.js +397 -0
  576. package/src/tasks-runner/tasks-runner.d.ts +23 -0
  577. package/src/tasks-runner/tasks-runner.js +2 -0
  578. package/src/tasks-runner/tasks-schedule.d.ts +36 -0
  579. package/src/tasks-runner/tasks-schedule.js +142 -0
  580. package/src/tasks-runner/utils.d.ts +51 -0
  581. package/src/tasks-runner/utils.js +293 -0
  582. package/src/utils/ab-testing.d.ts +51 -0
  583. package/src/utils/ab-testing.js +91 -0
  584. package/src/utils/all-file-data.d.ts +2 -0
  585. package/src/utils/all-file-data.js +15 -0
  586. package/src/utils/app-root.d.ts +8 -0
  587. package/src/utils/app-root.js +12 -0
  588. package/src/utils/assert-workspace-validity.d.ts +3 -0
  589. package/src/utils/assert-workspace-validity.js +84 -0
  590. package/src/utils/async-iterator.d.ts +2 -0
  591. package/src/utils/async-iterator.js +17 -0
  592. package/src/utils/cache-directory.d.ts +6 -0
  593. package/src/utils/cache-directory.js +60 -0
  594. package/src/utils/child-process.d.ts +19 -0
  595. package/src/utils/child-process.js +117 -0
  596. package/src/utils/chunkify.d.ts +1 -0
  597. package/src/utils/chunkify.js +38 -0
  598. package/src/utils/code-frames.d.ts +14 -0
  599. package/src/utils/code-frames.js +119 -0
  600. package/src/utils/collapse-expanded-outputs.d.ts +1 -0
  601. package/src/utils/collapse-expanded-outputs.js +41 -0
  602. package/src/utils/command-line-utils.d.ts +48 -0
  603. package/src/utils/command-line-utils.js +255 -0
  604. package/src/utils/consume-messages-from-socket.d.ts +1 -0
  605. package/src/utils/consume-messages-from-socket.js +22 -0
  606. package/src/utils/default-base.d.ts +1 -0
  607. package/src/utils/default-base.js +15 -0
  608. package/src/utils/exit-codes.d.ts +6 -0
  609. package/src/utils/exit-codes.js +20 -0
  610. package/src/utils/fileutils.d.ts +69 -0
  611. package/src/utils/fileutils.js +135 -0
  612. package/src/utils/find-matching-projects.d.ts +10 -0
  613. package/src/utils/find-matching-projects.js +198 -0
  614. package/src/utils/find-workspace-root.d.ts +11 -0
  615. package/src/utils/find-workspace-root.js +34 -0
  616. package/src/utils/globs.d.ts +1 -0
  617. package/src/utils/globs.js +8 -0
  618. package/src/utils/ignore.d.ts +8 -0
  619. package/src/utils/ignore.js +68 -0
  620. package/src/utils/installation-directory.d.ts +2 -0
  621. package/src/utils/installation-directory.js +13 -0
  622. package/src/utils/is-ci.d.ts +1 -0
  623. package/src/utils/is-ci.js +20 -0
  624. package/src/utils/json-diff.d.ts +18 -0
  625. package/src/utils/json-diff.js +112 -0
  626. package/src/utils/json.d.ts +44 -0
  627. package/src/utils/json.js +62 -0
  628. package/src/utils/logger.d.ts +12 -0
  629. package/src/utils/logger.js +52 -0
  630. package/src/utils/nx-cloud-utils.d.ts +4 -0
  631. package/src/utils/nx-cloud-utils.js +27 -0
  632. package/src/utils/nx-plugin.deprecated.d.ts +33 -0
  633. package/src/utils/nx-plugin.deprecated.js +25 -0
  634. package/src/utils/object-sort.d.ts +1 -0
  635. package/src/utils/object-sort.js +10 -0
  636. package/src/utils/output.d.ts +71 -0
  637. package/src/utils/output.js +240 -0
  638. package/src/utils/package-json.d.ts +98 -0
  639. package/src/utils/package-json.js +135 -0
  640. package/src/utils/package-manager.d.ts +99 -0
  641. package/src/utils/package-manager.js +315 -0
  642. package/src/utils/params.d.ts +138 -0
  643. package/src/utils/params.js +688 -0
  644. package/src/utils/path.d.ts +19 -0
  645. package/src/utils/path.js +38 -0
  646. package/src/utils/perf-logging.d.ts +1 -0
  647. package/src/utils/perf-logging.js +11 -0
  648. package/src/utils/plugins/community-plugins.d.ts +2 -0
  649. package/src/utils/plugins/community-plugins.js +29 -0
  650. package/src/utils/plugins/core-plugins.d.ts +3 -0
  651. package/src/utils/plugins/core-plugins.js +118 -0
  652. package/src/utils/plugins/index.d.ts +4 -0
  653. package/src/utils/plugins/index.js +14 -0
  654. package/src/utils/plugins/installed-plugins.d.ts +6 -0
  655. package/src/utils/plugins/installed-plugins.js +104 -0
  656. package/src/utils/plugins/local-plugins.d.ts +5 -0
  657. package/src/utils/plugins/local-plugins.js +58 -0
  658. package/src/utils/plugins/models.d.ts +22 -0
  659. package/src/utils/plugins/models.js +2 -0
  660. package/src/utils/plugins/plugin-capabilities.d.ts +4 -0
  661. package/src/utils/plugins/plugin-capabilities.js +125 -0
  662. package/src/utils/plugins/shared.d.ts +1 -0
  663. package/src/utils/plugins/shared.js +8 -0
  664. package/src/utils/print-help.d.ts +11 -0
  665. package/src/utils/print-help.js +265 -0
  666. package/src/utils/project-graph-utils.d.ts +13 -0
  667. package/src/utils/project-graph-utils.js +74 -0
  668. package/src/utils/promised-based-queue.d.ts +6 -0
  669. package/src/utils/promised-based-queue.js +43 -0
  670. package/src/utils/serialize-overrides-into-command-line.d.ts +3 -0
  671. package/src/utils/serialize-overrides-into-command-line.js +43 -0
  672. package/src/utils/split-target.d.ts +3 -0
  673. package/src/utils/split-target.js +49 -0
  674. package/src/utils/strip-indents.d.ts +14 -0
  675. package/src/utils/strip-indents.js +24 -0
  676. package/src/utils/typescript.d.ts +1 -0
  677. package/src/utils/typescript.js +5 -0
  678. package/src/utils/update-nxw.d.ts +2 -0
  679. package/src/utils/update-nxw.js +12 -0
  680. package/src/utils/versions.d.ts +1 -0
  681. package/src/utils/versions.js +4 -0
  682. package/src/utils/workspace-configuration-check.d.ts +1 -0
  683. package/src/utils/workspace-configuration-check.js +37 -0
  684. package/src/utils/workspace-context.d.ts +10 -0
  685. package/src/utils/workspace-context.js +56 -0
  686. package/src/utils/workspace-root.d.ts +6 -0
  687. package/src/utils/workspace-root.js +39 -0
  688. package/tasks-runners/default.d.ts +1 -0
  689. package/tasks-runners/default.js +5 -0
package/.eslintrc.json ADDED
@@ -0,0 +1,106 @@
1
+ {
2
+ "extends": "../../.eslintrc",
3
+ "rules": {},
4
+ "ignorePatterns": ["!**/*"],
5
+ "overrides": [
6
+ {
7
+ "files": ["*.ts", "*.tsx", "*.js", "*.jsx"],
8
+ "rules": {}
9
+ },
10
+ {
11
+ "files": ["*.ts"],
12
+ "excludedFiles": ["*.spec.ts"],
13
+ "rules": {
14
+ "@typescript-eslint/no-restricted-imports": [
15
+ "error",
16
+ {
17
+ "paths": [
18
+ {
19
+ "name": "typescript",
20
+ "message": "TypeScript is an optional dependency for Nx. If you need to use it, make sure its installed first with ensureTypescript.",
21
+ "allowTypeImports": true
22
+ }
23
+ ],
24
+ "patterns": [
25
+ {
26
+ "group": ["nx/*"],
27
+ "message": "Circular import in 'nx' found. Use relative path."
28
+ }
29
+ ]
30
+ }
31
+ ]
32
+ }
33
+ },
34
+ {
35
+ "files": ["*.js", "*.jsx"],
36
+ "rules": {}
37
+ },
38
+ {
39
+ "files": ["./package.json", "./executors.json", "./migrations.json"],
40
+ "parser": "jsonc-eslint-parser",
41
+ "rules": {
42
+ "@nx/nx-plugin-checks": [
43
+ "error",
44
+ {
45
+ "allowedVersionStrings": ["latest"]
46
+ }
47
+ ]
48
+ }
49
+ },
50
+ {
51
+ "files": ["nxw.ts"],
52
+ "rules": {
53
+ "@typescript-eslint/no-restricted-imports": [
54
+ "error",
55
+ {
56
+ "patterns": [
57
+ {
58
+ "group": ["*", "!fs"],
59
+ "message": "The Nx wrapper is ran before packages are installed. It should only import node builtins.",
60
+ "allowTypeImports": true
61
+ }
62
+ ]
63
+ }
64
+ ],
65
+ "no-restricted-modules": [
66
+ "error",
67
+ {
68
+ "patterns": ["*", "!fs", "!path", "!child_process", "!node:*"]
69
+ }
70
+ ],
71
+ "no-restricted-imports": "off"
72
+ }
73
+ },
74
+ {
75
+ "files": ["./package.json"],
76
+ "parser": "jsonc-eslint-parser",
77
+ "rules": {
78
+ "@nx/dependency-checks": [
79
+ "error",
80
+ {
81
+ "buildTargets": ["build-base"],
82
+ "ignoredDependencies": [
83
+ "typescript",
84
+ "@nrwl/angular",
85
+ "@angular-devkit/build-angular",
86
+ "@angular-devkit/core",
87
+ "@angular-devkit/architect",
88
+ "@swc/core", //Optional, used in JS analysis if available
89
+ "@swc/node-register", //Optional, used in JS analysis if available
90
+ "rxjs",
91
+ "@angular-devkit/schematics",
92
+ "@pnpm/lockfile-types",
93
+ "@nestjs/cli", // nx init nest makes use of nestjs cli (which should be available in NestJS CLI app) to parse the nest-cli.json file
94
+ "ts-node", // We *may* fall back on ts-node, but we want to encourage the use of @swc-node instead so we don't explicitly list ts-node as an optional dep
95
+ "memfs", // used in mock for handling .node files in tests
96
+ "events", // This is coming from @storybook/builder-manager since it uses the browser polyfill
97
+ "process", // This is coming from @storybook/builder-manager since it uses the browser polyfill
98
+ "prettier", // This is coming from @storybook/builder-manager since it uses the browser polyfill
99
+ "util" // This is coming from @storybook/builder-manager since it uses the browser polyfill
100
+ ]
101
+ }
102
+ ]
103
+ }
104
+ }
105
+ ]
106
+ }
package/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ (The MIT License)
2
+
3
+ Copyright (c) 2017-2023 Narwhal Technologies Inc.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ 'Software'), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
20
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
21
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
22
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,66 @@
1
+ <p style="text-align: center;">
2
+ <picture>
3
+ <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-dark.svg">
4
+ <img alt="Nx - Smart Monorepos · Fast CI" src="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-light.svg" width="100%">
5
+ </picture>
6
+ </p>
7
+
8
+ <div style="text-align: center;">
9
+
10
+ [![CircleCI](https://circleci.com/gh/nrwl/nx.svg?style=svg)](https://circleci.com/gh/nrwl/nx)
11
+ [![License](https://img.shields.io/npm/l/@nx/workspace.svg?style=flat-square)]()
12
+ [![NPM Version](https://badge.fury.io/js/%40nrwl%2Fworkspace.svg)](https://www.npmjs.com/@nx/workspace)
13
+ [![Semantic Release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg?style=flat-square)]()
14
+ [![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg)](http://commitizen.github.io/cz-cli/)
15
+ [![Join the chat at https://gitter.im/nrwl-nx/community](https://badges.gitter.im/nrwl-nx/community.svg)](https://gitter.im/nrwl-nx/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
16
+ [![Join us on the Official Nx Discord Server](https://img.shields.io/discord/1143497901675401286?label=discord)](https://go.nx.dev/community)
17
+
18
+ </div>
19
+
20
+
21
+ <hr>
22
+
23
+ # Nx: Smart Monorepos · Fast CI
24
+
25
+ Nx is a build system with built-in tooling and advanced CI capabilities. It helps you maintain and scale monorepos, both locally and on CI.
26
+
27
+ ## Getting Started
28
+
29
+ ### Creating an Nx Workspace
30
+
31
+ **Using `npx`**
32
+
33
+ ```bash
34
+ npx create-nx-workspace
35
+ ```
36
+
37
+ **Using `npm init`**
38
+
39
+ ```bash
40
+ npm init nx-workspace
41
+ ```
42
+
43
+ **Using `yarn create`**
44
+
45
+ ```bash
46
+ yarn create nx-workspace
47
+ ```
48
+
49
+ ### Adding Nx to an Existing Repository
50
+
51
+ Run:
52
+
53
+ ```bash
54
+ npx nx@latest init
55
+ ```
56
+
57
+ ## Documentation & Resources
58
+
59
+ - [Nx.Dev: Documentation, Guides, Tutorials](https://nx.dev)
60
+ - [Intro to Nx](https://nx.dev/getting-started/intro)
61
+ - [Official Nx YouTube Channel](https://www.youtube.com/@NxDevtools)
62
+ - [Blog Posts About Nx](https://blog.nrwl.io/nx/home)
63
+
64
+ <p style="text-align: center;"><a href="https://nx.dev/#learning-materials" target="_blank" rel="noreferrer"><img src="https://raw.githubusercontent.com/nrwl/nx/master/images/nx-courses-and-videos.svg"
65
+ width="100%" alt="Nx - Smart Monorepos · Fast CI"></a></p>
66
+
@@ -0,0 +1,8 @@
1
+ import { WorkspaceTypeAndRoot } from '../src/utils/find-workspace-root';
2
+ /**
3
+ * Nx is being run inside a workspace.
4
+ *
5
+ * @param workspace Relevant local workspace properties
6
+ */
7
+ export declare function initLocal(workspace: WorkspaceTypeAndRoot): void;
8
+ export declare function rewriteTargetsAndProjects(args: string[]): string[];
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.rewriteTargetsAndProjects = exports.initLocal = void 0;
4
+ const perf_hooks_1 = require("perf_hooks");
5
+ const nx_commands_1 = require("../src/command-line/nx-commands");
6
+ const strip_indents_1 = require("../src/utils/strip-indents");
7
+ const Mod = require("module");
8
+ /**
9
+ * Nx is being run inside a workspace.
10
+ *
11
+ * @param workspace Relevant local workspace properties
12
+ */
13
+ function initLocal(workspace) {
14
+ process.env.NX_CLI_SET = 'true';
15
+ try {
16
+ perf_hooks_1.performance.mark('init-local');
17
+ monkeyPatchRequire();
18
+ if (workspace.type !== 'nx' && shouldDelegateToAngularCLI()) {
19
+ console.warn((0, strip_indents_1.stripIndents) `Using Nx to run Angular CLI commands is deprecated and will be removed in a future version.
20
+ To run Angular CLI commands, use \`ng\`.`);
21
+ handleAngularCLIFallbacks(workspace);
22
+ return;
23
+ }
24
+ const command = process.argv[2];
25
+ if (command === 'run' || command === 'g' || command === 'generate') {
26
+ nx_commands_1.commandsObject.parse(process.argv.slice(2));
27
+ }
28
+ else if (isKnownCommand(command)) {
29
+ const newArgs = rewriteTargetsAndProjects(process.argv);
30
+ const help = newArgs.indexOf('--help');
31
+ const split = newArgs.indexOf('--');
32
+ if (help > -1 && (split === -1 || split > help)) {
33
+ nx_commands_1.commandsObject.showHelp();
34
+ }
35
+ else {
36
+ nx_commands_1.commandsObject.parse(newArgs);
37
+ }
38
+ }
39
+ else {
40
+ nx_commands_1.commandsObject.parse(process.argv.slice(2));
41
+ }
42
+ }
43
+ catch (e) {
44
+ console.error(e.message);
45
+ process.exit(1);
46
+ }
47
+ }
48
+ exports.initLocal = initLocal;
49
+ function rewriteTargetsAndProjects(args) {
50
+ const newArgs = [args[2]];
51
+ let i = 3;
52
+ while (i < args.length) {
53
+ if (args[i] === '--') {
54
+ return [...newArgs, ...args.slice(i)];
55
+ }
56
+ else if (args[i] === '-p' ||
57
+ args[i] === '--projects' ||
58
+ args[i] === '--exclude' ||
59
+ args[i] === '--files' ||
60
+ args[i] === '-t' ||
61
+ args[i] === '--target' ||
62
+ args[i] === '--targets') {
63
+ newArgs.push(args[i]);
64
+ i++;
65
+ const items = [];
66
+ while (i < args.length && !args[i].startsWith('-')) {
67
+ items.push(args[i]);
68
+ i++;
69
+ }
70
+ newArgs.push(items.join(','));
71
+ }
72
+ else {
73
+ newArgs.push(args[i]);
74
+ ++i;
75
+ }
76
+ }
77
+ return newArgs;
78
+ }
79
+ exports.rewriteTargetsAndProjects = rewriteTargetsAndProjects;
80
+ function wrapIntoQuotesIfNeeded(arg) {
81
+ return arg.indexOf(':') > -1 ? `"${arg}"` : arg;
82
+ }
83
+ function isKnownCommand(command) {
84
+ const commands = [
85
+ ...Object.keys(nx_commands_1.commandsObject
86
+ .getInternalMethods()
87
+ .getCommandInstance()
88
+ .getCommandHandlers()),
89
+ 'g',
90
+ 'dep-graph',
91
+ 'affected:dep-graph',
92
+ 'format',
93
+ 'workspace-schematic',
94
+ 'connect-to-nx-cloud',
95
+ 'clear-cache',
96
+ 'help',
97
+ ];
98
+ return !command || command.startsWith('-') || commands.indexOf(command) > -1;
99
+ }
100
+ function shouldDelegateToAngularCLI() {
101
+ const command = process.argv[2];
102
+ const commands = ['analytics', 'config', 'doc', 'update', 'completion'];
103
+ return commands.indexOf(command) > -1;
104
+ }
105
+ function handleAngularCLIFallbacks(workspace) {
106
+ if (process.argv[2] === 'update' && process.env.FORCE_NG_UPDATE != 'true') {
107
+ console.log(`Nx provides a much improved version of "ng update". It runs the same migrations, but allows you to:`);
108
+ console.log(`- rerun the same migration multiple times`);
109
+ console.log(`- reorder migrations, skip migrations`);
110
+ console.log(`- fix migrations that "almost work"`);
111
+ console.log(`- commit a partially migrated state`);
112
+ console.log(`- change versions of packages to match organizational requirements`);
113
+ console.log(`And, in general, it is lot more reliable for non-trivial workspaces. Read more at: https://nx.dev/getting-started/nx-and-angular#ng-update-and-nx-migrate`);
114
+ console.log(`Run "nx migrate latest" to update to the latest version of Nx.`);
115
+ console.log(`Running "ng update" can still be useful in some dev workflows, so we aren't planning to remove it.`);
116
+ console.log(`If you need to use it, run "FORCE_NG_UPDATE=true ng update".`);
117
+ }
118
+ else if (process.argv[2] === 'completion') {
119
+ if (!process.argv[3]) {
120
+ console.log(`"ng completion" is not natively supported by Nx.
121
+ Instead, you could try an Nx Editor Plugin for a visual tool to run Nx commands. If you're using VSCode, you can use the Nx Console plugin, or if you're using WebStorm, you could use one of the available community plugins.
122
+ For more information, see https://nx.dev/features/integrate-with-editors`);
123
+ }
124
+ }
125
+ else {
126
+ try {
127
+ // nx-ignore-next-line
128
+ const cli = require.resolve('@angular/cli/lib/init.js', {
129
+ paths: [workspace.dir],
130
+ });
131
+ require(cli);
132
+ }
133
+ catch (e) {
134
+ console.error(`Could not find '@angular/cli/lib/init.js' module in this workspace.`, e);
135
+ process.exit(1);
136
+ }
137
+ }
138
+ }
139
+ // TODO(v17): Remove this once the @nrwl/* packages are not
140
+ function monkeyPatchRequire() {
141
+ const originalRequire = Mod.prototype.require;
142
+ Mod.prototype.require = function (...args) {
143
+ const modulePath = args[0];
144
+ if (!modulePath.startsWith('@nrwl/')) {
145
+ return originalRequire.apply(this, args);
146
+ }
147
+ else {
148
+ try {
149
+ // Try the original require
150
+ return originalRequire.apply(this, args);
151
+ }
152
+ catch (e) {
153
+ if (e.code !== 'MODULE_NOT_FOUND') {
154
+ throw e;
155
+ }
156
+ try {
157
+ // Retry the require with the @nx package
158
+ return originalRequire.apply(this, args.map((value, i) => {
159
+ if (i !== 0) {
160
+ return value;
161
+ }
162
+ else {
163
+ return value.replace('@nrwl/', '@nx/');
164
+ }
165
+ }));
166
+ }
167
+ catch {
168
+ // Throw the original error
169
+ throw e;
170
+ }
171
+ }
172
+ }
173
+ // do some side-effect of your own
174
+ };
175
+ }
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
@@ -0,0 +1,55 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ const resolution_helpers_1 = require("../src/nx-cloud/resolution-helpers");
5
+ const get_cloud_options_1 = require("../src/nx-cloud/utilities/get-cloud-options");
6
+ const update_manager_1 = require("../src/nx-cloud/update-manager");
7
+ const output_1 = require("../src/utils/output");
8
+ const command = process.argv[2];
9
+ const options = (0, get_cloud_options_1.getCloudOptions)();
10
+ Promise.resolve().then(async () => invokeCommandWithNxCloudClient(options));
11
+ async function invokeCommandWithNxCloudClient(options) {
12
+ try {
13
+ const { nxCloudClient } = await (0, update_manager_1.verifyOrUpdateNxCloudClient)(options);
14
+ const paths = (0, resolution_helpers_1.findAncestorNodeModules)(__dirname, []);
15
+ nxCloudClient.configureLightClientRequire()(paths);
16
+ if (command in nxCloudClient.commands) {
17
+ nxCloudClient.commands[command]()
18
+ .then(() => process.exit(0))
19
+ .catch((e) => {
20
+ console.error(e);
21
+ process.exit(1);
22
+ });
23
+ }
24
+ else {
25
+ output_1.output.error({
26
+ title: `Unknown Command "${command}"`,
27
+ });
28
+ output_1.output.log({
29
+ title: 'Available Commands:',
30
+ bodyLines: Object.keys(nxCloudClient.commands).map((c) => `- ${c}`),
31
+ });
32
+ process.exit(1);
33
+ }
34
+ }
35
+ catch (e) {
36
+ const body = ['Cannot run commands from the `nx-cloud` CLI.'];
37
+ if (e instanceof update_manager_1.NxCloudEnterpriseOutdatedError) {
38
+ try {
39
+ // TODO: Remove this when all enterprise customers have updated.
40
+ // Try requiring the bin from the `nx-cloud` package.
41
+ return require('nx-cloud/bin/nx-cloud');
42
+ }
43
+ catch { }
44
+ body.push('If you are an Nx Enterprise customer, please reach out to your assigned Developer Productivity Engineer.', 'If you are NOT an Nx Enterprise customer but are seeing this message, please reach out to cloud-support@nrwl.io.');
45
+ }
46
+ if (e instanceof update_manager_1.NxCloudClientUnavailableError) {
47
+ body.unshift('You may be offline. Please try again when you are back online.');
48
+ }
49
+ output_1.output.error({
50
+ title: e.message,
51
+ bodyLines: body,
52
+ });
53
+ process.exit(1);
54
+ }
55
+ }
package/bin/nx.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
package/bin/nx.js ADDED
@@ -0,0 +1,230 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ const find_workspace_root_1 = require("../src/utils/find-workspace-root");
5
+ const chalk = require("chalk");
6
+ const dotenv_1 = require("dotenv");
7
+ const dotenv_expand_1 = require("dotenv-expand");
8
+ const init_local_1 = require("./init-local");
9
+ const output_1 = require("../src/utils/output");
10
+ const installation_directory_1 = require("../src/utils/installation-directory");
11
+ const semver_1 = require("semver");
12
+ const strip_indents_1 = require("../src/utils/strip-indents");
13
+ const package_json_1 = require("../src/utils/package-json");
14
+ const child_process_1 = require("child_process");
15
+ const path_1 = require("path");
16
+ const assert_supported_platform_1 = require("../src/native/assert-supported-platform");
17
+ const perf_hooks_1 = require("perf_hooks");
18
+ const workspace_context_1 = require("../src/utils/workspace-context");
19
+ const client_1 = require("../src/daemon/client/client");
20
+ function main() {
21
+ if (process.argv[2] !== 'report' &&
22
+ process.argv[2] !== '--version' &&
23
+ process.argv[2] !== '--help') {
24
+ (0, assert_supported_platform_1.assertSupportedPlatform)();
25
+ }
26
+ require('nx/src/utils/perf-logging');
27
+ perf_hooks_1.performance.mark('loading dotenv files:start');
28
+ loadDotEnvFiles();
29
+ perf_hooks_1.performance.mark('loading dotenv files:end');
30
+ perf_hooks_1.performance.measure('loading dotenv files', 'loading dotenv files:start', 'loading dotenv files:end');
31
+ const workspace = (0, find_workspace_root_1.findWorkspaceRoot)(process.cwd());
32
+ // new is a special case because there is no local workspace to load
33
+ if (process.argv[2] === 'new' ||
34
+ process.argv[2] === '_migrate' ||
35
+ process.argv[2] === 'init' ||
36
+ (process.argv[2] === 'graph' && !workspace)) {
37
+ process.env.NX_DAEMON = 'false';
38
+ require('nx/src/command-line/nx-commands').commandsObject.argv;
39
+ }
40
+ else {
41
+ if (!client_1.daemonClient.enabled() && workspace !== null) {
42
+ (0, workspace_context_1.setupWorkspaceContext)(workspace.dir);
43
+ }
44
+ // polyfill rxjs observable to avoid issues with multiple version of Observable installed in node_modules
45
+ // https://twitter.com/BenLesh/status/1192478226385428483?s=20
46
+ if (!Symbol.observable)
47
+ Symbol.observable = Symbol('observable polyfill');
48
+ // Make sure that a local copy of Nx exists in workspace
49
+ let localNx;
50
+ try {
51
+ localNx = workspace && resolveNx(workspace);
52
+ }
53
+ catch {
54
+ localNx = null;
55
+ }
56
+ const isLocalInstall = localNx === resolveNx(null);
57
+ const { LOCAL_NX_VERSION, GLOBAL_NX_VERSION } = determineNxVersions(localNx, workspace, isLocalInstall);
58
+ if (process.argv[2] === '--version') {
59
+ handleNxVersionCommand(LOCAL_NX_VERSION, GLOBAL_NX_VERSION);
60
+ }
61
+ if (!workspace) {
62
+ handleNoWorkspace(GLOBAL_NX_VERSION);
63
+ }
64
+ if (!localNx) {
65
+ handleMissingLocalInstallation();
66
+ }
67
+ // this file is already in the local workspace
68
+ if (isLocalInstall) {
69
+ (0, init_local_1.initLocal)(workspace);
70
+ }
71
+ else {
72
+ // Nx is being run from globally installed CLI - hand off to the local
73
+ warnIfUsingOutdatedGlobalInstall(GLOBAL_NX_VERSION, LOCAL_NX_VERSION);
74
+ if (localNx.includes('.nx')) {
75
+ const nxWrapperPath = localNx.replace(/\.nx.*/, '.nx/') + 'nxw.js';
76
+ require(nxWrapperPath);
77
+ }
78
+ else {
79
+ require(localNx);
80
+ }
81
+ }
82
+ }
83
+ }
84
+ /**
85
+ * This loads dotenv files from:
86
+ * - .env
87
+ * - .local.env
88
+ * - .env.local
89
+ */
90
+ function loadDotEnvFiles() {
91
+ for (const file of ['.local.env', '.env.local', '.env']) {
92
+ const myEnv = (0, dotenv_1.config)({
93
+ path: file,
94
+ });
95
+ (0, dotenv_expand_1.expand)(myEnv);
96
+ }
97
+ }
98
+ function handleNoWorkspace(globalNxVersion) {
99
+ output_1.output.log({
100
+ title: `The current directory isn't part of an Nx workspace.`,
101
+ bodyLines: [
102
+ `To create a workspace run:`,
103
+ chalk.bold.white(`npx create-nx-workspace@latest <workspace name>`),
104
+ '',
105
+ `To add Nx to an existing workspace with a workspace-specific nx.json, run:`,
106
+ chalk.bold.white(`npx nx@latest init`),
107
+ ],
108
+ });
109
+ output_1.output.note({
110
+ title: `For more information please visit https://nx.dev/`,
111
+ });
112
+ warnIfUsingOutdatedGlobalInstall(globalNxVersion);
113
+ process.exit(1);
114
+ }
115
+ function handleNxVersionCommand(LOCAL_NX_VERSION, GLOBAL_NX_VERSION) {
116
+ console.log((0, strip_indents_1.stripIndents) `Nx Version:
117
+ - Local: ${LOCAL_NX_VERSION ? 'v' + LOCAL_NX_VERSION : 'Not found'}
118
+ - Global: ${GLOBAL_NX_VERSION ? 'v' + GLOBAL_NX_VERSION : 'Not found'}`);
119
+ process.exit(0);
120
+ }
121
+ function determineNxVersions(localNx, workspace, isLocalInstall) {
122
+ const LOCAL_NX_VERSION = localNx
123
+ ? getLocalNxVersion(workspace)
124
+ : null;
125
+ const GLOBAL_NX_VERSION = isLocalInstall
126
+ ? null
127
+ : require('../package.json').version;
128
+ globalThis.GLOBAL_NX_VERSION ??= GLOBAL_NX_VERSION;
129
+ return { LOCAL_NX_VERSION, GLOBAL_NX_VERSION };
130
+ }
131
+ function resolveNx(workspace) {
132
+ // root relative to location of the nx bin
133
+ const globalsRoot = (0, path_1.join)(__dirname, '../../../');
134
+ // prefer Nx installed in .nx/installation
135
+ try {
136
+ return require.resolve('nx/bin/nx.js', {
137
+ paths: [(0, installation_directory_1.getNxInstallationPath)(workspace ? workspace.dir : globalsRoot)],
138
+ });
139
+ }
140
+ catch { }
141
+ // check for root install
142
+ try {
143
+ return require.resolve('nx/bin/nx.js', {
144
+ paths: [workspace ? workspace.dir : globalsRoot],
145
+ });
146
+ }
147
+ catch {
148
+ // TODO(v17): Remove this
149
+ // fallback for old CLI install setup
150
+ // nx-ignore-next-line
151
+ return require.resolve('@nrwl/cli/bin/nx.js', {
152
+ paths: [workspace ? workspace.dir : globalsRoot],
153
+ });
154
+ }
155
+ }
156
+ function handleMissingLocalInstallation() {
157
+ output_1.output.error({
158
+ title: `Could not find Nx modules in this workspace.`,
159
+ bodyLines: [`Have you run ${chalk.bold.white(`npm/yarn install`)}?`],
160
+ });
161
+ process.exit(1);
162
+ }
163
+ /**
164
+ * Assumes currently running Nx is global install.
165
+ * Warns if out of date by 1 major version or more.
166
+ */
167
+ function warnIfUsingOutdatedGlobalInstall(globalNxVersion, localNxVersion) {
168
+ // Never display this warning if Nx is already running via Nx
169
+ if (process.env.NX_CLI_SET) {
170
+ return;
171
+ }
172
+ const isOutdatedGlobalInstall = checkOutdatedGlobalInstallation(globalNxVersion, localNxVersion);
173
+ // Using a global Nx Install
174
+ if (isOutdatedGlobalInstall) {
175
+ const bodyLines = localNxVersion
176
+ ? [
177
+ `Your repository uses a higher version of Nx (${localNxVersion}) than your global CLI version (${globalNxVersion})`,
178
+ ]
179
+ : [];
180
+ bodyLines.push('For more information, see https://nx.dev/more-concepts/global-nx');
181
+ output_1.output.warn({
182
+ title: `Its time to update Nx 🎉`,
183
+ bodyLines,
184
+ });
185
+ }
186
+ }
187
+ function checkOutdatedGlobalInstallation(globalNxVersion, localNxVersion) {
188
+ // We aren't running a global install, so we can't know if its outdated.
189
+ if (!globalNxVersion) {
190
+ return false;
191
+ }
192
+ if (localNxVersion) {
193
+ // If the global Nx install is at least a major version behind the local install, warn.
194
+ return (0, semver_1.major)(globalNxVersion) < (0, semver_1.major)(localNxVersion);
195
+ }
196
+ // No local installation was detected. This can happen if the user is running a global install
197
+ // that contains an older version of Nx, which is unable to detect the local installation. The most
198
+ // recent case where this would have happened would be when we stopped generating workspace.json by default,
199
+ // as older global installations used it to determine the workspace root. This only be hit in rare cases,
200
+ // but can provide valuable insights for troubleshooting.
201
+ const latestVersionOfNx = getLatestVersionOfNx();
202
+ if (latestVersionOfNx && (0, semver_1.major)(globalNxVersion) < (0, semver_1.major)(latestVersionOfNx)) {
203
+ return true;
204
+ }
205
+ }
206
+ function getLocalNxVersion(workspace) {
207
+ try {
208
+ const { packageJson } = (0, package_json_1.readModulePackageJson)('nx', (0, installation_directory_1.getNxRequirePaths)(workspace.dir));
209
+ return packageJson.version;
210
+ }
211
+ catch { }
212
+ }
213
+ function _getLatestVersionOfNx() {
214
+ try {
215
+ return (0, child_process_1.execSync)('npm view nx@latest version').toString().trim();
216
+ }
217
+ catch {
218
+ try {
219
+ return (0, child_process_1.execSync)('pnpm view nx@latest version').toString().trim();
220
+ }
221
+ catch {
222
+ return null;
223
+ }
224
+ }
225
+ }
226
+ const getLatestVersionOfNx = ((fn) => {
227
+ let cache = null;
228
+ return () => cache || (cache = fn());
229
+ })(_getLatestVersionOfNx);
230
+ main();
@@ -0,0 +1 @@
1
+ export {};