@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.
- package/.eslintrc.json +140 -0
- package/LICENSE +22 -0
- package/README.md +66 -0
- package/bin/init-local.d.ts +8 -0
- package/bin/init-local.js +183 -0
- package/bin/nx-cloud.d.ts +3 -0
- package/bin/nx-cloud.js +47 -0
- package/bin/nx.d.ts +2 -0
- package/bin/nx.js +226 -0
- package/bin/post-install.d.ts +1 -0
- package/bin/post-install.js +64 -0
- package/bin/run-executor.d.ts +1 -0
- package/bin/run-executor.js +66 -0
- package/executors.json +19 -0
- package/generators.json +10 -0
- package/migrations.json +94 -0
- package/node_modules/@nrwl/tao/LICENSE +22 -0
- package/node_modules/@nrwl/tao/README.md +18 -0
- package/node_modules/@nrwl/tao/index.d.ts +1 -0
- package/node_modules/@nrwl/tao/index.js +7 -0
- package/node_modules/@nrwl/tao/package.json +41 -0
- package/node_modules/@nrwl/tao/src/commands/ngcli-adapter.d.ts +1 -0
- package/node_modules/@nrwl/tao/src/commands/ngcli-adapter.js +5 -0
- package/node_modules/@nrwl/tao/src/shared/logger.d.ts +1 -0
- package/node_modules/@nrwl/tao/src/shared/logger.js +5 -0
- package/node_modules/@nrwl/tao/src/shared/nx.d.ts +1 -0
- package/node_modules/@nrwl/tao/src/shared/nx.js +5 -0
- package/node_modules/@nrwl/tao/src/shared/package-manager.d.ts +1 -0
- package/node_modules/@nrwl/tao/src/shared/package-manager.js +5 -0
- package/node_modules/@nrwl/tao/src/shared/project-graph.d.ts +1 -0
- package/node_modules/@nrwl/tao/src/shared/project-graph.js +5 -0
- package/node_modules/@nrwl/tao/src/shared/tree.d.ts +1 -0
- package/node_modules/@nrwl/tao/src/shared/tree.js +5 -0
- package/node_modules/@nrwl/tao/src/utils/app-root.d.ts +1 -0
- package/node_modules/@nrwl/tao/src/utils/app-root.js +5 -0
- package/package.json +198 -0
- package/plugins/package-json.d.ts +1 -0
- package/plugins/package-json.js +12 -0
- package/presets/core.json +1 -0
- package/presets/npm.json +7 -0
- package/release/changelog-renderer/index.d.ts +80 -0
- package/release/changelog-renderer/index.js +315 -0
- package/release/index.d.ts +4 -0
- package/release/index.js +12 -0
- package/schemas/nx-schema.json +819 -0
- package/schemas/project-schema.json +331 -0
- package/schemas/workspace-schema.json +185 -0
- package/src/adapter/angular-json.d.ts +10 -0
- package/src/adapter/angular-json.js +128 -0
- package/src/adapter/compat.d.ts +2 -0
- package/src/adapter/compat.js +143 -0
- package/src/adapter/decorate-cli.d.ts +1 -0
- package/src/adapter/decorate-cli.js +24 -0
- package/src/adapter/ngcli-adapter.d.ts +90 -0
- package/src/adapter/ngcli-adapter.js +854 -0
- package/src/adapter/rxjs-for-await.d.ts +109 -0
- package/src/adapter/rxjs-for-await.js +362 -0
- package/src/command-line/activate-powerpack/activate-powerpack.d.ts +2 -0
- package/src/command-line/activate-powerpack/activate-powerpack.js +34 -0
- package/src/command-line/activate-powerpack/command-object.d.ts +6 -0
- package/src/command-line/activate-powerpack/command-object.js +26 -0
- package/src/command-line/add/add.d.ts +3 -0
- package/src/command-line/add/add.js +150 -0
- package/src/command-line/add/command-object.d.ts +8 -0
- package/src/command-line/add/command-object.js +27 -0
- package/src/command-line/affected/affected.d.ts +10 -0
- package/src/command-line/affected/affected.js +88 -0
- package/src/command-line/affected/command-object.d.ts +6 -0
- package/src/command-line/affected/command-object.js +82 -0
- package/src/command-line/connect/command-object.d.ts +3 -0
- package/src/command-line/connect/command-object.js +32 -0
- package/src/command-line/connect/connect-to-nx-cloud.d.ts +12 -0
- package/src/command-line/connect/connect-to-nx-cloud.js +149 -0
- package/src/command-line/connect/view-logs.d.ts +1 -0
- package/src/command-line/connect/view-logs.js +55 -0
- package/src/command-line/daemon/command-object.d.ts +2 -0
- package/src/command-line/daemon/command-object.js +21 -0
- package/src/command-line/daemon/daemon.d.ts +2 -0
- package/src/command-line/daemon/daemon.js +26 -0
- package/src/command-line/deprecated/command-objects.d.ts +9 -0
- package/src/command-line/deprecated/command-objects.js +48 -0
- package/src/command-line/examples.d.ts +5 -0
- package/src/command-line/examples.js +379 -0
- package/src/command-line/exec/command-object.d.ts +2 -0
- package/src/command-line/exec/command-object.js +19 -0
- package/src/command-line/exec/exec.d.ts +1 -0
- package/src/command-line/exec/exec.js +142 -0
- package/src/command-line/format/command-object.d.ts +3 -0
- package/src/command-line/format/command-object.js +46 -0
- package/src/command-line/format/format.d.ts +2 -0
- package/src/command-line/format/format.js +195 -0
- package/src/command-line/generate/command-object.d.ts +2 -0
- package/src/command-line/generate/command-object.js +67 -0
- package/src/command-line/generate/generate.d.ts +21 -0
- package/src/command-line/generate/generate.js +262 -0
- package/src/command-line/generate/generator-utils.d.ts +18 -0
- package/src/command-line/generate/generator-utils.js +86 -0
- package/src/command-line/graph/command-object.d.ts +25 -0
- package/src/command-line/graph/command-object.js +75 -0
- package/src/command-line/graph/graph.d.ts +68 -0
- package/src/command-line/graph/graph.js +806 -0
- package/src/command-line/import/command-object.d.ts +2 -0
- package/src/command-line/import/command-object.js +44 -0
- package/src/command-line/import/import.d.ts +25 -0
- package/src/command-line/import/import.js +328 -0
- package/src/command-line/import/utils/merge-remote-source.d.ts +2 -0
- package/src/command-line/import/utils/merge-remote-source.js +14 -0
- package/src/command-line/import/utils/needs-install.d.ts +3 -0
- package/src/command-line/import/utils/needs-install.js +31 -0
- package/src/command-line/import/utils/prepare-source-repo.d.ts +2 -0
- package/src/command-line/import/utils/prepare-source-repo.js +27 -0
- package/src/command-line/init/command-object.d.ts +2 -0
- package/src/command-line/init/command-object.js +83 -0
- package/src/command-line/init/implementation/add-nx-to-monorepo.d.ts +6 -0
- package/src/command-line/init/implementation/add-nx-to-monorepo.js +130 -0
- package/src/command-line/init/implementation/add-nx-to-nest.d.ts +5 -0
- package/src/command-line/init/implementation/add-nx-to-nest.js +345 -0
- package/src/command-line/init/implementation/add-nx-to-npm-repo.d.ts +6 -0
- package/src/command-line/init/implementation/add-nx-to-npm-repo.js +72 -0
- package/src/command-line/init/implementation/angular/index.d.ts +2 -0
- package/src/command-line/init/implementation/angular/index.js +125 -0
- package/src/command-line/init/implementation/angular/integrated-workspace.d.ts +1 -0
- package/src/command-line/init/implementation/angular/integrated-workspace.js +12 -0
- package/src/command-line/init/implementation/angular/legacy-angular-versions.d.ts +2 -0
- package/src/command-line/init/implementation/angular/legacy-angular-versions.js +122 -0
- package/src/command-line/init/implementation/angular/standalone-workspace.d.ts +1 -0
- package/src/command-line/init/implementation/angular/standalone-workspace.js +175 -0
- package/src/command-line/init/implementation/angular/types.d.ts +20 -0
- package/src/command-line/init/implementation/angular/types.js +2 -0
- package/src/command-line/init/implementation/dot-nx/add-nx-scripts.d.ts +8 -0
- package/src/command-line/init/implementation/dot-nx/add-nx-scripts.js +106 -0
- package/src/command-line/init/implementation/dot-nx/nxw.d.ts +1 -0
- package/src/command-line/init/implementation/dot-nx/nxw.js +117 -0
- package/src/command-line/init/implementation/react/add-craco-commands-to-package-scripts.d.ts +1 -0
- package/src/command-line/init/implementation/react/add-craco-commands-to-package-scripts.js +21 -0
- package/src/command-line/init/implementation/react/add-vite-commands-to-package-scripts.d.ts +1 -0
- package/src/command-line/init/implementation/react/add-vite-commands-to-package-scripts.js +18 -0
- package/src/command-line/init/implementation/react/check-for-custom-webpack-setup.d.ts +1 -0
- package/src/command-line/init/implementation/react/check-for-custom-webpack-setup.js +17 -0
- package/src/command-line/init/implementation/react/check-for-uncommitted-changes.d.ts +1 -0
- package/src/command-line/init/implementation/react/check-for-uncommitted-changes.js +20 -0
- package/src/command-line/init/implementation/react/clean-up-files.d.ts +1 -0
- package/src/command-line/init/implementation/react/clean-up-files.js +30 -0
- package/src/command-line/init/implementation/react/index.d.ts +4 -0
- package/src/command-line/init/implementation/react/index.js +230 -0
- package/src/command-line/init/implementation/react/read-name-from-package-json.d.ts +1 -0
- package/src/command-line/init/implementation/react/read-name-from-package-json.js +16 -0
- package/src/command-line/init/implementation/react/rename-js-to-jsx.d.ts +1 -0
- package/src/command-line/init/implementation/react/rename-js-to-jsx.js +22 -0
- package/src/command-line/init/implementation/react/tsconfig-setup.d.ts +1 -0
- package/src/command-line/init/implementation/react/tsconfig-setup.js +108 -0
- package/src/command-line/init/implementation/react/write-craco-config.d.ts +1 -0
- package/src/command-line/init/implementation/react/write-craco-config.js +61 -0
- package/src/command-line/init/implementation/react/write-vite-config.d.ts +1 -0
- package/src/command-line/init/implementation/react/write-vite-config.js +37 -0
- package/src/command-line/init/implementation/react/write-vite-index-html.d.ts +1 -0
- package/src/command-line/init/implementation/react/write-vite-index-html.js +24 -0
- package/src/command-line/init/implementation/utils.d.ts +16 -0
- package/src/command-line/init/implementation/utils.js +205 -0
- package/src/command-line/init/init-v1.d.ts +11 -0
- package/src/command-line/init/init-v1.js +130 -0
- package/src/command-line/init/init-v2.d.ts +14 -0
- package/src/command-line/init/init-v2.js +239 -0
- package/src/command-line/list/command-object.d.ts +2 -0
- package/src/command-line/list/command-object.js +15 -0
- package/src/command-line/list/list.d.ts +13 -0
- package/src/command-line/list/list.js +44 -0
- package/src/command-line/login/command-object.d.ts +2 -0
- package/src/command-line/login/command-object.js +16 -0
- package/src/command-line/login/login.d.ts +5 -0
- package/src/command-line/login/login.js +16 -0
- package/src/command-line/logout/command-object.d.ts +2 -0
- package/src/command-line/logout/command-object.js +12 -0
- package/src/command-line/logout/logout.d.ts +4 -0
- package/src/command-line/logout/logout.js +13 -0
- package/src/command-line/migrate/command-object.d.ts +3 -0
- package/src/command-line/migrate/command-object.js +171 -0
- package/src/command-line/migrate/migrate.d.ts +114 -0
- package/src/command-line/migrate/migrate.js +1110 -0
- package/src/command-line/new/command-object.d.ts +2 -0
- package/src/command-line/new/command-object.js +25 -0
- package/src/command-line/new/new.d.ts +3 -0
- package/src/command-line/new/new.js +30 -0
- package/src/command-line/nx-commands.d.ts +10 -0
- package/src/command-line/nx-commands.js +128 -0
- package/src/command-line/release/changelog.d.ts +34 -0
- package/src/command-line/release/changelog.js +997 -0
- package/src/command-line/release/command-object.d.ts +69 -0
- package/src/command-line/release/command-object.js +297 -0
- package/src/command-line/release/config/config.d.ts +54 -0
- package/src/command-line/release/config/config.js +864 -0
- package/src/command-line/release/config/conventional-commits.d.ts +2 -0
- package/src/command-line/release/config/conventional-commits.js +98 -0
- package/src/command-line/release/config/deep-merge-json.d.ts +1 -0
- package/src/command-line/release/config/deep-merge-json.js +28 -0
- package/src/command-line/release/config/filter-release-groups.d.ts +15 -0
- package/src/command-line/release/config/filter-release-groups.js +150 -0
- package/src/command-line/release/config/version-plans.d.ts +42 -0
- package/src/command-line/release/config/version-plans.js +220 -0
- package/src/command-line/release/index.d.ts +30 -0
- package/src/command-line/release/index.js +37 -0
- package/src/command-line/release/plan-check.d.ts +4 -0
- package/src/command-line/release/plan-check.js +169 -0
- package/src/command-line/release/plan.d.ts +4 -0
- package/src/command-line/release/plan.js +259 -0
- package/src/command-line/release/publish.d.ts +4 -0
- package/src/command-line/release/publish.js +164 -0
- package/src/command-line/release/release.d.ts +5 -0
- package/src/command-line/release/release.js +242 -0
- package/src/command-line/release/utils/batch-projects-by-generator-config.d.ts +7 -0
- package/src/command-line/release/utils/batch-projects-by-generator-config.js +36 -0
- package/src/command-line/release/utils/exec-command.d.ts +1 -0
- package/src/command-line/release/utils/exec-command.js +34 -0
- package/src/command-line/release/utils/generate-version-plan-content.d.ts +1 -0
- package/src/command-line/release/utils/generate-version-plan-content.js +20 -0
- package/src/command-line/release/utils/get-touched-projects-for-group.d.ts +7 -0
- package/src/command-line/release/utils/get-touched-projects-for-group.js +78 -0
- package/src/command-line/release/utils/git.d.ts +67 -0
- package/src/command-line/release/utils/git.js +407 -0
- package/src/command-line/release/utils/github.d.ts +31 -0
- package/src/command-line/release/utils/github.js +322 -0
- package/src/command-line/release/utils/launch-editor.d.ts +1 -0
- package/src/command-line/release/utils/launch-editor.js +46 -0
- package/src/command-line/release/utils/markdown.d.ts +6 -0
- package/src/command-line/release/utils/markdown.js +28 -0
- package/src/command-line/release/utils/print-changes.d.ts +6 -0
- package/src/command-line/release/utils/print-changes.js +61 -0
- package/src/command-line/release/utils/print-config.d.ts +7 -0
- package/src/command-line/release/utils/print-config.js +36 -0
- package/src/command-line/release/utils/resolve-changelog-renderer.d.ts +2 -0
- package/src/command-line/release/utils/resolve-changelog-renderer.js +30 -0
- package/src/command-line/release/utils/resolve-nx-json-error-message.d.ts +1 -0
- package/src/command-line/release/utils/resolve-nx-json-error-message.js +52 -0
- package/src/command-line/release/utils/resolve-semver-specifier.d.ts +4 -0
- package/src/command-line/release/utils/resolve-semver-specifier.js +57 -0
- package/src/command-line/release/utils/semver.d.ts +11 -0
- package/src/command-line/release/utils/semver.js +58 -0
- package/src/command-line/release/utils/shared.d.ts +53 -0
- package/src/command-line/release/utils/shared.js +219 -0
- package/src/command-line/release/version.d.ts +60 -0
- package/src/command-line/release/version.js +463 -0
- package/src/command-line/repair/command-object.d.ts +2 -0
- package/src/command-line/repair/command-object.js +20 -0
- package/src/command-line/repair/repair.d.ts +3 -0
- package/src/command-line/repair/repair.js +36 -0
- package/src/command-line/report/command-object.d.ts +2 -0
- package/src/command-line/report/command-object.js +11 -0
- package/src/command-line/report/report.d.ts +57 -0
- package/src/command-line/report/report.js +303 -0
- package/src/command-line/reset/command-object.d.ts +8 -0
- package/src/command-line/reset/command-object.js +26 -0
- package/src/command-line/reset/reset.d.ts +2 -0
- package/src/command-line/reset/reset.js +131 -0
- package/src/command-line/run/command-object.d.ts +6 -0
- package/src/command-line/run/command-object.js +42 -0
- package/src/command-line/run/executor-utils.d.ts +7 -0
- package/src/command-line/run/executor-utils.js +86 -0
- package/src/command-line/run/run-one.d.ts +7 -0
- package/src/command-line/run/run-one.js +116 -0
- package/src/command-line/run/run.d.ts +51 -0
- package/src/command-line/run/run.js +179 -0
- package/src/command-line/run-many/command-object.d.ts +2 -0
- package/src/command-line/run-many/command-object.js +17 -0
- package/src/command-line/run-many/run-many.d.ts +10 -0
- package/src/command-line/run-many/run-many.js +92 -0
- package/src/command-line/show/command-object.d.ts +26 -0
- package/src/command-line/show/command-object.js +115 -0
- package/src/command-line/show/project.d.ts +2 -0
- package/src/command-line/show/project.js +60 -0
- package/src/command-line/show/projects.d.ts +2 -0
- package/src/command-line/show/projects.js +77 -0
- package/src/command-line/sync/command-object.d.ts +6 -0
- package/src/command-line/sync/command-object.js +20 -0
- package/src/command-line/sync/sync.d.ts +6 -0
- package/src/command-line/sync/sync.js +114 -0
- package/src/command-line/watch/command-object.d.ts +2 -0
- package/src/command-line/watch/command-object.js +64 -0
- package/src/command-line/watch/watch.d.ts +23 -0
- package/src/command-line/watch/watch.js +173 -0
- package/src/command-line/yargs-utils/documentation.d.ts +2 -0
- package/src/command-line/yargs-utils/documentation.js +11 -0
- package/src/command-line/yargs-utils/shared-options.d.ts +75 -0
- package/src/command-line/yargs-utils/shared-options.js +253 -0
- package/src/commands-runner/command-graph.d.ts +13 -0
- package/src/commands-runner/command-graph.js +2 -0
- package/src/commands-runner/create-command-graph.d.ts +4 -0
- package/src/commands-runner/create-command-graph.js +67 -0
- package/src/commands-runner/get-command-projects.d.ts +3 -0
- package/src/commands-runner/get-command-projects.js +18 -0
- package/src/config/calculate-default-project-name.d.ts +4 -0
- package/src/config/calculate-default-project-name.js +41 -0
- package/src/config/configuration.d.ts +8 -0
- package/src/config/configuration.js +17 -0
- package/src/config/misc-interfaces.d.ts +212 -0
- package/src/config/misc-interfaces.js +2 -0
- package/src/config/nx-json.d.ts +479 -0
- package/src/config/nx-json.js +39 -0
- package/src/config/project-graph.d.ts +137 -0
- package/src/config/project-graph.js +37 -0
- package/src/config/schema-utils.d.ts +15 -0
- package/src/config/schema-utils.js +58 -0
- package/src/config/task-graph.d.ts +104 -0
- package/src/config/task-graph.js +2 -0
- package/src/config/to-project-name.d.ts +5 -0
- package/src/config/to-project-name.js +12 -0
- package/src/config/workspace-json-project-json.d.ts +225 -0
- package/src/config/workspace-json-project-json.js +2 -0
- package/src/core/graph/environment.js +1 -0
- package/src/core/graph/favicon.ico +0 -0
- package/src/core/graph/index.html +30 -0
- package/src/core/graph/main.js +1 -0
- package/src/core/graph/runtime.js +1 -0
- package/src/core/graph/styles.css +3 -0
- package/src/core/graph/styles.js +1 -0
- package/src/daemon/cache.d.ts +9 -0
- package/src/daemon/cache.js +68 -0
- package/src/daemon/client/client.d.ts +72 -0
- package/src/daemon/client/client.js +505 -0
- package/src/daemon/client/daemon-socket-messenger.d.ts +12 -0
- package/src/daemon/client/daemon-socket-messenger.js +26 -0
- package/src/daemon/client/exec-is-server-available.d.ts +1 -0
- package/src/daemon/client/exec-is-server-available.js +11 -0
- package/src/daemon/client/generate-help-output.d.ts +1 -0
- package/src/daemon/client/generate-help-output.js +26 -0
- package/src/daemon/is-on-daemon.d.ts +1 -0
- package/src/daemon/is-on-daemon.js +6 -0
- package/src/daemon/message-types/flush-sync-generator-changes-to-disk.d.ts +6 -0
- package/src/daemon/message-types/flush-sync-generator-changes-to-disk.js +11 -0
- package/src/daemon/message-types/force-shutdown.d.ts +5 -0
- package/src/daemon/message-types/force-shutdown.js +11 -0
- package/src/daemon/message-types/get-context-file-data.d.ts +5 -0
- package/src/daemon/message-types/get-context-file-data.js +11 -0
- package/src/daemon/message-types/get-files-in-directory.d.ts +6 -0
- package/src/daemon/message-types/get-files-in-directory.js +11 -0
- package/src/daemon/message-types/get-nx-workspace-files.d.ts +6 -0
- package/src/daemon/message-types/get-nx-workspace-files.js +11 -0
- package/src/daemon/message-types/get-registered-sync-generators.d.ts +5 -0
- package/src/daemon/message-types/get-registered-sync-generators.js +11 -0
- package/src/daemon/message-types/get-sync-generator-changes.d.ts +6 -0
- package/src/daemon/message-types/get-sync-generator-changes.js +11 -0
- package/src/daemon/message-types/glob.d.ts +7 -0
- package/src/daemon/message-types/glob.js +11 -0
- package/src/daemon/message-types/hash-glob.d.ts +7 -0
- package/src/daemon/message-types/hash-glob.js +11 -0
- package/src/daemon/message-types/task-history.d.ts +19 -0
- package/src/daemon/message-types/task-history.js +27 -0
- package/src/daemon/message-types/update-workspace-context.d.ts +8 -0
- package/src/daemon/message-types/update-workspace-context.js +11 -0
- package/src/daemon/server/file-watching/changed-projects.d.ts +10 -0
- package/src/daemon/server/file-watching/changed-projects.js +44 -0
- package/src/daemon/server/file-watching/file-watcher-sockets.d.ts +12 -0
- package/src/daemon/server/file-watching/file-watcher-sockets.js +66 -0
- package/src/daemon/server/handle-context-file-data.d.ts +2 -0
- package/src/daemon/server/handle-context-file-data.js +12 -0
- package/src/daemon/server/handle-flush-sync-generator-changes-to-disk.d.ts +2 -0
- package/src/daemon/server/handle-flush-sync-generator-changes-to-disk.js +11 -0
- package/src/daemon/server/handle-force-shutdown.d.ts +5 -0
- package/src/daemon/server/handle-force-shutdown.js +18 -0
- package/src/daemon/server/handle-get-files-in-directory.d.ts +2 -0
- package/src/daemon/server/handle-get-files-in-directory.js +12 -0
- package/src/daemon/server/handle-get-registered-sync-generators.d.ts +2 -0
- package/src/daemon/server/handle-get-registered-sync-generators.js +11 -0
- package/src/daemon/server/handle-get-sync-generator-changes.d.ts +2 -0
- package/src/daemon/server/handle-get-sync-generator-changes.js +19 -0
- package/src/daemon/server/handle-glob.d.ts +2 -0
- package/src/daemon/server/handle-glob.js +12 -0
- package/src/daemon/server/handle-hash-glob.d.ts +2 -0
- package/src/daemon/server/handle-hash-glob.js +12 -0
- package/src/daemon/server/handle-hash-tasks.d.ts +10 -0
- package/src/daemon/server/handle-hash-tasks.js +35 -0
- package/src/daemon/server/handle-nx-workspace-files.d.ts +2 -0
- package/src/daemon/server/handle-nx-workspace-files.js +12 -0
- package/src/daemon/server/handle-outputs-tracking.d.ts +15 -0
- package/src/daemon/server/handle-outputs-tracking.js +35 -0
- package/src/daemon/server/handle-process-in-background.d.ts +6 -0
- package/src/daemon/server/handle-process-in-background.js +32 -0
- package/src/daemon/server/handle-request-project-graph.d.ts +2 -0
- package/src/daemon/server/handle-request-project-graph.js +36 -0
- package/src/daemon/server/handle-request-shutdown.d.ts +5 -0
- package/src/daemon/server/handle-request-shutdown.js +27 -0
- package/src/daemon/server/handle-task-history.d.ts +13 -0
- package/src/daemon/server/handle-task-history.js +30 -0
- package/src/daemon/server/handle-update-workspace-context.d.ts +2 -0
- package/src/daemon/server/handle-update-workspace-context.js +11 -0
- package/src/daemon/server/logger.d.ts +18 -0
- package/src/daemon/server/logger.js +37 -0
- package/src/daemon/server/outputs-tracking.d.ts +8 -0
- package/src/daemon/server/outputs-tracking.js +93 -0
- package/src/daemon/server/plugins.d.ts +3 -0
- package/src/daemon/server/plugins.js +32 -0
- package/src/daemon/server/project-graph-incremental-recomputation.d.ts +24 -0
- package/src/daemon/server/project-graph-incremental-recomputation.js +300 -0
- package/src/daemon/server/server.d.ts +9 -0
- package/src/daemon/server/server.js +380 -0
- package/src/daemon/server/shutdown-utils.d.ts +17 -0
- package/src/daemon/server/shutdown-utils.js +89 -0
- package/src/daemon/server/start.d.ts +1 -0
- package/src/daemon/server/start.js +17 -0
- package/src/daemon/server/sync-generators.d.ts +13 -0
- package/src/daemon/server/sync-generators.js +357 -0
- package/src/daemon/server/watcher.d.ts +11 -0
- package/src/daemon/server/watcher.js +103 -0
- package/src/daemon/socket-utils.d.ts +12 -0
- package/src/daemon/socket-utils.js +55 -0
- package/src/daemon/tmp-dir.d.ts +12 -0
- package/src/daemon/tmp-dir.js +70 -0
- package/src/devkit-exports.d.ts +136 -0
- package/src/devkit-exports.js +142 -0
- package/src/devkit-internals.d.ts +26 -0
- package/src/devkit-internals.js +52 -0
- package/src/devkit-testing-exports.d.ts +2 -0
- package/src/devkit-testing-exports.js +8 -0
- package/src/executors/noop/noop.impl.d.ts +3 -0
- package/src/executors/noop/noop.impl.js +6 -0
- package/src/executors/noop/schema.json +10 -0
- package/src/executors/run-commands/run-commands.impl.d.ts +57 -0
- package/src/executors/run-commands/run-commands.impl.js +480 -0
- package/src/executors/run-commands/schema.json +184 -0
- package/src/executors/run-script/run-script.impl.d.ts +8 -0
- package/src/executors/run-script/run-script.impl.js +57 -0
- package/src/executors/run-script/schema.json +28 -0
- package/src/executors/utils/convert-nx-executor.d.ts +10 -0
- package/src/executors/utils/convert-nx-executor.js +85 -0
- package/src/generators/internal-utils/format-changed-files-with-prettier-if-available.d.ts +14 -0
- package/src/generators/internal-utils/format-changed-files-with-prettier-if-available.js +58 -0
- package/src/generators/testing-utils/create-tree-with-empty-workspace.d.ts +11 -0
- package/src/generators/testing-utils/create-tree-with-empty-workspace.js +52 -0
- package/src/generators/testing-utils/create-tree.d.ts +5 -0
- package/src/generators/testing-utils/create-tree.js +10 -0
- package/src/generators/tree.d.ts +125 -0
- package/src/generators/tree.js +309 -0
- package/src/generators/utils/glob.d.ts +22 -0
- package/src/generators/utils/glob.js +51 -0
- package/src/generators/utils/json.d.ts +28 -0
- package/src/generators/utils/json.js +48 -0
- package/src/generators/utils/nx-json.d.ts +11 -0
- package/src/generators/utils/nx-json.js +58 -0
- package/src/generators/utils/project-configuration.d.ts +42 -0
- package/src/generators/utils/project-configuration.js +278 -0
- package/src/hasher/create-task-hasher.d.ts +4 -0
- package/src/hasher/create-task-hasher.js +15 -0
- package/src/hasher/file-hasher.d.ts +2 -0
- package/src/hasher/file-hasher.js +18 -0
- package/src/hasher/hash-task.d.ts +8 -0
- package/src/hasher/hash-task.js +85 -0
- package/src/hasher/native-task-hasher-impl.d.ts +18 -0
- package/src/hasher/native-task-hasher-impl.js +37 -0
- package/src/hasher/node-task-hasher-impl.d.ts +48 -0
- package/src/hasher/node-task-hasher-impl.js +449 -0
- package/src/hasher/task-hasher.d.ts +128 -0
- package/src/hasher/task-hasher.js +266 -0
- package/src/index.d.ts +1 -0
- package/src/index.js +5 -0
- package/src/migrations/update-15-0-0/migrate-to-inputs.d.ts +2 -0
- package/src/migrations/update-15-0-0/migrate-to-inputs.js +102 -0
- package/src/migrations/update-15-0-0/prefix-outputs.d.ts +2 -0
- package/src/migrations/update-15-0-0/prefix-outputs.js +49 -0
- package/src/migrations/update-16-0-0/remove-nrwl-cli.d.ts +2 -0
- package/src/migrations/update-16-0-0/remove-nrwl-cli.js +16 -0
- package/src/migrations/update-16-0-0/update-depends-on-to-tokens.d.ts +2 -0
- package/src/migrations/update-16-0-0/update-depends-on-to-tokens.js +97 -0
- package/src/migrations/update-16-0-0/update-nx-cloud-runner.d.ts +2 -0
- package/src/migrations/update-16-0-0/update-nx-cloud-runner.js +29 -0
- package/src/migrations/update-16-2-0/remove-run-commands-output-path.d.ts +2 -0
- package/src/migrations/update-16-2-0/remove-run-commands-output-path.js +45 -0
- package/src/migrations/update-16-8-0/escape-dollar-sign-env-variables.d.ts +12 -0
- package/src/migrations/update-16-8-0/escape-dollar-sign-env-variables.js +67 -0
- package/src/migrations/update-16-9-0/remove-project-name-and-root-format.d.ts +2 -0
- package/src/migrations/update-16-9-0/remove-project-name-and-root-format.js +21 -0
- package/src/migrations/update-17-0-0/move-cache-directory.d.ts +2 -0
- package/src/migrations/update-17-0-0/move-cache-directory.js +35 -0
- package/src/migrations/update-17-0-0/rm-default-collection-npm-scope.d.ts +2 -0
- package/src/migrations/update-17-0-0/rm-default-collection-npm-scope.js +72 -0
- package/src/migrations/update-17-0-0/use-minimal-config-for-tasks-runner-options.d.ts +2 -0
- package/src/migrations/update-17-0-0/use-minimal-config-for-tasks-runner-options.js +122 -0
- package/src/migrations/update-17-2-0/move-default-base.d.ts +5 -0
- package/src/migrations/update-17-2-0/move-default-base.js +21 -0
- package/src/migrations/update-17-3-0/nx-release-path.d.ts +3 -0
- package/src/migrations/update-17-3-0/nx-release-path.js +47 -0
- package/src/migrations/update-17-3-0/update-nxw.d.ts +2 -0
- package/src/migrations/update-17-3-0/update-nxw.js +7 -0
- package/src/migrations/update-18-0-0/disable-crystal-for-existing-workspaces.d.ts +2 -0
- package/src/migrations/update-18-0-0/disable-crystal-for-existing-workspaces.js +11 -0
- package/src/migrations/update-19-2-0/move-workspace-data-directory.d.ts +4 -0
- package/src/migrations/update-19-2-0/move-workspace-data-directory.js +33 -0
- package/src/migrations/update-19-2-4/set-project-name.d.ts +2 -0
- package/src/migrations/update-19-2-4/set-project-name.js +34 -0
- package/src/native/assert-supported-platform.d.ts +1 -0
- package/src/native/assert-supported-platform.js +38 -0
- package/src/native/browser.js +1 -0
- package/src/native/index.d.ts +282 -0
- package/src/native/index.js +94 -0
- package/src/native/native-bindings.js +405 -0
- package/src/native/native-file-cache-location.d.ts +1 -0
- package/src/native/native-file-cache-location.js +22 -0
- package/src/native/nx.openharmony-arm64.node +0 -0
- package/src/native/nx.wasi-browser.js +114 -0
- package/src/native/nx.wasi.cjs +145 -0
- package/src/native/nx.wasm32-wasi.wasm +0 -0
- package/src/native/transform-objects.d.ts +3 -0
- package/src/native/transform-objects.js +51 -0
- package/src/native/wasi-worker-browser.mjs +32 -0
- package/src/native/wasi-worker.mjs +63 -0
- package/src/nx-cloud/debug-logger.d.ts +1 -0
- package/src/nx-cloud/debug-logger.js +8 -0
- package/src/nx-cloud/generators/connect-to-nx-cloud/connect-to-nx-cloud.d.ts +14 -0
- package/src/nx-cloud/generators/connect-to-nx-cloud/connect-to-nx-cloud.js +159 -0
- package/src/nx-cloud/generators/connect-to-nx-cloud/schema.json +41 -0
- package/src/nx-cloud/models/onboarding-status.d.ts +1 -0
- package/src/nx-cloud/models/onboarding-status.js +2 -0
- package/src/nx-cloud/nx-cloud-tasks-runner-shell.d.ts +16 -0
- package/src/nx-cloud/nx-cloud-tasks-runner-shell.js +41 -0
- package/src/nx-cloud/resolution-helpers.d.ts +1 -0
- package/src/nx-cloud/resolution-helpers.js +19 -0
- package/src/nx-cloud/update-manager.d.ts +19 -0
- package/src/nx-cloud/update-manager.js +240 -0
- package/src/nx-cloud/utilities/axios.d.ts +2 -0
- package/src/nx-cloud/utilities/axios.js +24 -0
- package/src/nx-cloud/utilities/client.d.ts +10 -0
- package/src/nx-cloud/utilities/client.js +35 -0
- package/src/nx-cloud/utilities/environment.d.ts +3 -0
- package/src/nx-cloud/utilities/environment.js +47 -0
- package/src/nx-cloud/utilities/get-cloud-options.d.ts +5 -0
- package/src/nx-cloud/utilities/get-cloud-options.js +23 -0
- package/src/nx-cloud/utilities/is-workspace-claimed.d.ts +1 -0
- package/src/nx-cloud/utilities/is-workspace-claimed.js +25 -0
- package/src/nx-cloud/utilities/onboarding.d.ts +5 -0
- package/src/nx-cloud/utilities/onboarding.js +28 -0
- package/src/nx-cloud/utilities/url-shorten.d.ts +10 -0
- package/src/nx-cloud/utilities/url-shorten.js +156 -0
- package/src/plugins/js/hasher/hasher.d.ts +5 -0
- package/src/plugins/js/hasher/hasher.js +51 -0
- package/src/plugins/js/index.d.ts +4 -0
- package/src/plugins/js/index.js +106 -0
- package/src/plugins/js/lock-file/lock-file.d.ts +34 -0
- package/src/plugins/js/lock-file/lock-file.js +211 -0
- package/src/plugins/js/lock-file/npm-parser.d.ts +7 -0
- package/src/plugins/js/lock-file/npm-parser.js +475 -0
- package/src/plugins/js/lock-file/pnpm-parser.d.ts +7 -0
- package/src/plugins/js/lock-file/pnpm-parser.js +466 -0
- package/src/plugins/js/lock-file/project-graph-pruning.d.ts +7 -0
- package/src/plugins/js/lock-file/project-graph-pruning.js +154 -0
- package/src/plugins/js/lock-file/utils/package-json.d.ts +10 -0
- package/src/plugins/js/lock-file/utils/package-json.js +33 -0
- package/src/plugins/js/lock-file/utils/pnpm-normalizer.d.ts +20 -0
- package/src/plugins/js/lock-file/utils/pnpm-normalizer.js +854 -0
- package/src/plugins/js/lock-file/yarn-parser.d.ts +7 -0
- package/src/plugins/js/lock-file/yarn-parser.js +436 -0
- package/src/plugins/js/package-json/create-package-json.d.ts +29 -0
- package/src/plugins/js/package-json/create-package-json.js +247 -0
- package/src/plugins/js/project-graph/affected/lock-file-changes.d.ts +4 -0
- package/src/plugins/js/project-graph/affected/lock-file-changes.js +28 -0
- package/src/plugins/js/project-graph/affected/npm-packages.d.ts +4 -0
- package/src/plugins/js/project-graph/affected/npm-packages.js +68 -0
- package/src/plugins/js/project-graph/affected/touched-projects.d.ts +2 -0
- package/src/plugins/js/project-graph/affected/touched-projects.js +18 -0
- package/src/plugins/js/project-graph/affected/tsconfig-json-changes.d.ts +4 -0
- package/src/plugins/js/project-graph/affected/tsconfig-json-changes.js +63 -0
- package/src/plugins/js/project-graph/build-dependencies/build-dependencies.d.ts +6 -0
- package/src/plugins/js/project-graph/build-dependencies/build-dependencies.js +45 -0
- package/src/plugins/js/project-graph/build-dependencies/explicit-package-json-dependencies.d.ts +4 -0
- package/src/plugins/js/project-graph/build-dependencies/explicit-package-json-dependencies.js +94 -0
- package/src/plugins/js/project-graph/build-dependencies/explicit-project-dependencies.d.ts +4 -0
- package/src/plugins/js/project-graph/build-dependencies/explicit-project-dependencies.js +88 -0
- package/src/plugins/js/project-graph/build-dependencies/strip-source-code.d.ts +7 -0
- package/src/plugins/js/project-graph/build-dependencies/strip-source-code.js +155 -0
- package/src/plugins/js/project-graph/build-dependencies/target-project-locator.d.ts +59 -0
- package/src/plugins/js/project-graph/build-dependencies/target-project-locator.js +296 -0
- package/src/plugins/js/project-graph/build-dependencies/typescript-import-locator.d.ts +16 -0
- package/src/plugins/js/project-graph/build-dependencies/typescript-import-locator.js +120 -0
- package/src/plugins/js/project-graph/build-nodes/build-npm-package-nodes.d.ts +2 -0
- package/src/plugins/js/project-graph/build-nodes/build-npm-package-nodes.js +31 -0
- package/src/plugins/js/utils/config.d.ts +2 -0
- package/src/plugins/js/utils/config.js +68 -0
- package/src/plugins/js/utils/register.d.ts +152 -0
- package/src/plugins/js/utils/register.js +343 -0
- package/src/plugins/js/utils/resolve-relative-to-dir.d.ts +5 -0
- package/src/plugins/js/utils/resolve-relative-to-dir.js +17 -0
- package/src/plugins/js/utils/typescript.d.ts +14 -0
- package/src/plugins/js/utils/typescript.js +97 -0
- package/src/plugins/js/versions.d.ts +1 -0
- package/src/plugins/js/versions.js +4 -0
- package/src/plugins/package-json/create-nodes.d.ts +20 -0
- package/src/plugins/package-json/create-nodes.js +187 -0
- package/src/plugins/package-json/index.d.ts +2 -0
- package/src/plugins/package-json/index.js +6 -0
- package/src/plugins/project-json/build-nodes/project-json.d.ts +6 -0
- package/src/plugins/project-json/build-nodes/project-json.js +45 -0
- package/src/project-graph/affected/affected-project-graph-models.d.ts +11 -0
- package/src/project-graph/affected/affected-project-graph-models.js +2 -0
- package/src/project-graph/affected/affected-project-graph.d.ts +4 -0
- package/src/project-graph/affected/affected-project-graph.js +82 -0
- package/src/project-graph/affected/locators/project-glob-changes.d.ts +2 -0
- package/src/project-graph/affected/locators/project-glob-changes.js +31 -0
- package/src/project-graph/affected/locators/workspace-json-changes.d.ts +4 -0
- package/src/project-graph/affected/locators/workspace-json-changes.js +47 -0
- package/src/project-graph/affected/locators/workspace-projects.d.ts +3 -0
- package/src/project-graph/affected/locators/workspace-projects.js +74 -0
- package/src/project-graph/build-project-graph.d.ts +22 -0
- package/src/project-graph/build-project-graph.js +292 -0
- package/src/project-graph/error-types.d.ts +135 -0
- package/src/project-graph/error-types.js +305 -0
- package/src/project-graph/file-map-utils.d.ts +15 -0
- package/src/project-graph/file-map-utils.js +55 -0
- package/src/project-graph/file-utils.d.ts +30 -0
- package/src/project-graph/file-utils.js +179 -0
- package/src/project-graph/nx-deps-cache.d.ts +48 -0
- package/src/project-graph/nx-deps-cache.js +227 -0
- package/src/project-graph/operators.d.ts +12 -0
- package/src/project-graph/operators.js +114 -0
- package/src/project-graph/plugins/index.d.ts +3 -0
- package/src/project-graph/plugins/index.js +10 -0
- package/src/project-graph/plugins/internal-api.d.ts +29 -0
- package/src/project-graph/plugins/internal-api.js +134 -0
- package/src/project-graph/plugins/isolation/index.d.ts +3 -0
- package/src/project-graph/plugins/isolation/index.js +14 -0
- package/src/project-graph/plugins/isolation/messaging.d.ts +125 -0
- package/src/project-graph/plugins/isolation/messaging.js +46 -0
- package/src/project-graph/plugins/isolation/plugin-pool.d.ts +3 -0
- package/src/project-graph/plugins/isolation/plugin-pool.js +301 -0
- package/src/project-graph/plugins/isolation/plugin-worker.d.ts +1 -0
- package/src/project-graph/plugins/isolation/plugin-worker.js +158 -0
- package/src/project-graph/plugins/loader.d.ts +24 -0
- package/src/project-graph/plugins/loader.js +220 -0
- package/src/project-graph/plugins/public-api.d.ts +130 -0
- package/src/project-graph/plugins/public-api.js +4 -0
- package/src/project-graph/plugins/utils.d.ts +8 -0
- package/src/project-graph/plugins/utils.js +63 -0
- package/src/project-graph/project-graph-builder.d.ts +133 -0
- package/src/project-graph/project-graph-builder.js +379 -0
- package/src/project-graph/project-graph.d.ts +51 -0
- package/src/project-graph/project-graph.js +261 -0
- package/src/project-graph/utils/build-all-workspace-files.d.ts +2 -0
- package/src/project-graph/utils/build-all-workspace-files.js +14 -0
- package/src/project-graph/utils/find-project-for-path.d.ts +20 -0
- package/src/project-graph/utils/find-project-for-path.js +55 -0
- package/src/project-graph/utils/implicit-project-dependencies.d.ts +3 -0
- package/src/project-graph/utils/implicit-project-dependencies.js +18 -0
- package/src/project-graph/utils/normalize-project-nodes.d.ts +6 -0
- package/src/project-graph/utils/normalize-project-nodes.js +88 -0
- package/src/project-graph/utils/project-configuration-utils.d.ts +74 -0
- package/src/project-graph/utils/project-configuration-utils.js +781 -0
- package/src/project-graph/utils/retrieve-workspace-files.d.ts +30 -0
- package/src/project-graph/utils/retrieve-workspace-files.js +88 -0
- package/src/tasks-runner/batch/batch-messages.d.ts +33 -0
- package/src/tasks-runner/batch/batch-messages.js +9 -0
- package/src/tasks-runner/batch/run-batch.d.ts +1 -0
- package/src/tasks-runner/batch/run-batch.js +77 -0
- package/src/tasks-runner/cache.d.ts +64 -0
- package/src/tasks-runner/cache.js +399 -0
- package/src/tasks-runner/create-task-graph.d.ts +28 -0
- package/src/tasks-runner/create-task-graph.js +242 -0
- package/src/tasks-runner/default-tasks-runner.d.ts +26 -0
- package/src/tasks-runner/default-tasks-runner.js +62 -0
- package/src/tasks-runner/fork.d.ts +1 -0
- package/src/tasks-runner/fork.js +30 -0
- package/src/tasks-runner/forked-process-task-runner.d.ts +42 -0
- package/src/tasks-runner/forked-process-task-runner.js +405 -0
- package/src/tasks-runner/init-tasks-runner.d.ts +13 -0
- package/src/tasks-runner/init-tasks-runner.js +61 -0
- package/src/tasks-runner/life-cycle.d.ts +43 -0
- package/src/tasks-runner/life-cycle.js +71 -0
- package/src/tasks-runner/life-cycles/dynamic-run-many-terminal-output-life-cycle.d.ts +25 -0
- package/src/tasks-runner/life-cycles/dynamic-run-many-terminal-output-life-cycle.js +353 -0
- package/src/tasks-runner/life-cycles/dynamic-run-one-terminal-output-life-cycle.d.ts +24 -0
- package/src/tasks-runner/life-cycles/dynamic-run-one-terminal-output-life-cycle.js +228 -0
- package/src/tasks-runner/life-cycles/empty-terminal-output-life-cycle.d.ts +5 -0
- package/src/tasks-runner/life-cycles/empty-terminal-output-life-cycle.js +16 -0
- package/src/tasks-runner/life-cycles/formatting-utils.d.ts +3 -0
- package/src/tasks-runner/life-cycles/formatting-utils.js +55 -0
- package/src/tasks-runner/life-cycles/invoke-runner-terminal-output-life-cycle.d.ts +13 -0
- package/src/tasks-runner/life-cycles/invoke-runner-terminal-output-life-cycle.js +67 -0
- package/src/tasks-runner/life-cycles/pretty-time.d.ts +4 -0
- package/src/tasks-runner/life-cycles/pretty-time.js +73 -0
- package/src/tasks-runner/life-cycles/static-run-many-terminal-output-life-cycle.d.ts +29 -0
- package/src/tasks-runner/life-cycles/static-run-many-terminal-output-life-cycle.js +106 -0
- package/src/tasks-runner/life-cycles/static-run-one-terminal-output-life-cycle.d.ts +28 -0
- package/src/tasks-runner/life-cycles/static-run-one-terminal-output-life-cycle.js +97 -0
- package/src/tasks-runner/life-cycles/store-run-information-life-cycle.d.ts +17 -0
- package/src/tasks-runner/life-cycles/store-run-information-life-cycle.js +87 -0
- package/src/tasks-runner/life-cycles/task-history-life-cycle-old.d.ts +9 -0
- package/src/tasks-runner/life-cycles/task-history-life-cycle-old.js +54 -0
- package/src/tasks-runner/life-cycles/task-history-life-cycle.d.ts +10 -0
- package/src/tasks-runner/life-cycles/task-history-life-cycle.js +55 -0
- package/src/tasks-runner/life-cycles/task-profiling-life-cycle.d.ts +14 -0
- package/src/tasks-runner/life-cycles/task-profiling-life-cycle.js +73 -0
- package/src/tasks-runner/life-cycles/task-results-life-cycle.d.ts +6 -0
- package/src/tasks-runner/life-cycles/task-results-life-cycle.js +17 -0
- package/src/tasks-runner/life-cycles/task-timings-life-cycle.d.ts +8 -0
- package/src/tasks-runner/life-cycles/task-timings-life-cycle.js +39 -0
- package/src/tasks-runner/life-cycles/view-logs-utils.d.ts +1 -0
- package/src/tasks-runner/life-cycles/view-logs-utils.js +15 -0
- package/src/tasks-runner/pseudo-ipc.d.ts +48 -0
- package/src/tasks-runner/pseudo-ipc.js +140 -0
- package/src/tasks-runner/pseudo-terminal.d.ts +45 -0
- package/src/tasks-runner/pseudo-terminal.js +168 -0
- package/src/tasks-runner/remove-old-cache-records.d.ts +1 -0
- package/src/tasks-runner/remove-old-cache-records.js +60 -0
- package/src/tasks-runner/run-command.d.ts +38 -0
- package/src/tasks-runner/run-command.js +590 -0
- package/src/tasks-runner/task-env.d.ts +20 -0
- package/src/tasks-runner/task-env.js +171 -0
- package/src/tasks-runner/task-graph-utils.d.ts +10 -0
- package/src/tasks-runner/task-graph-utils.js +88 -0
- package/src/tasks-runner/task-orchestrator.d.ts +53 -0
- package/src/tasks-runner/task-orchestrator.js +458 -0
- package/src/tasks-runner/tasks-runner.d.ts +23 -0
- package/src/tasks-runner/tasks-runner.js +2 -0
- package/src/tasks-runner/tasks-schedule.d.ts +41 -0
- package/src/tasks-runner/tasks-schedule.js +192 -0
- package/src/tasks-runner/utils.d.ts +57 -0
- package/src/tasks-runner/utils.js +392 -0
- package/src/utils/ab-testing.d.ts +51 -0
- package/src/utils/ab-testing.js +112 -0
- package/src/utils/all-file-data.d.ts +2 -0
- package/src/utils/all-file-data.js +8 -0
- package/src/utils/app-root.d.ts +8 -0
- package/src/utils/app-root.js +12 -0
- package/src/utils/assert-workspace-validity.d.ts +3 -0
- package/src/utils/assert-workspace-validity.js +84 -0
- package/src/utils/async-iterator.d.ts +2 -0
- package/src/utils/async-iterator.js +18 -0
- package/src/utils/cache-directory.d.ts +7 -0
- package/src/utils/cache-directory.js +71 -0
- package/src/utils/child-process.d.ts +18 -0
- package/src/utils/child-process.js +119 -0
- package/src/utils/chunkify.d.ts +11 -0
- package/src/utils/chunkify.js +44 -0
- package/src/utils/code-frames.d.ts +14 -0
- package/src/utils/code-frames.js +118 -0
- package/src/utils/collapse-expanded-outputs.d.ts +1 -0
- package/src/utils/collapse-expanded-outputs.js +40 -0
- package/src/utils/command-line-utils.d.ts +54 -0
- package/src/utils/command-line-utils.js +267 -0
- package/src/utils/consume-messages-from-socket.d.ts +1 -0
- package/src/utils/consume-messages-from-socket.js +21 -0
- package/src/utils/db-connection.d.ts +5 -0
- package/src/utils/db-connection.js +22 -0
- package/src/utils/default-base.d.ts +1 -0
- package/src/utils/default-base.js +17 -0
- package/src/utils/dotenv.d.ts +7 -0
- package/src/utils/dotenv.js +21 -0
- package/src/utils/exit-codes.d.ts +5 -0
- package/src/utils/exit-codes.js +19 -0
- package/src/utils/fileutils.d.ts +75 -0
- package/src/utils/fileutils.js +151 -0
- package/src/utils/find-matching-projects.d.ts +10 -0
- package/src/utils/find-matching-projects.js +210 -0
- package/src/utils/find-workspace-root.d.ts +11 -0
- package/src/utils/find-workspace-root.js +33 -0
- package/src/utils/get-package-name-from-import-path.d.ts +1 -0
- package/src/utils/get-package-name-from-import-path.js +17 -0
- package/src/utils/git-utils.d.ts +41 -0
- package/src/utils/git-utils.index-filter.d.ts +0 -0
- package/src/utils/git-utils.index-filter.js +21 -0
- package/src/utils/git-utils.js +259 -0
- package/src/utils/git-utils.tree-filter.d.ts +11 -0
- package/src/utils/git-utils.tree-filter.js +45 -0
- package/src/utils/globs.d.ts +3 -0
- package/src/utils/globs.js +18 -0
- package/src/utils/handle-errors.d.ts +1 -0
- package/src/utils/handle-errors.js +71 -0
- package/src/utils/ignore.d.ts +8 -0
- package/src/utils/ignore.js +75 -0
- package/src/utils/installation-directory.d.ts +2 -0
- package/src/utils/installation-directory.js +12 -0
- package/src/utils/is-ci.d.ts +1 -0
- package/src/utils/is-ci.js +20 -0
- package/src/utils/json-diff.d.ts +18 -0
- package/src/utils/json-diff.js +112 -0
- package/src/utils/json.d.ts +44 -0
- package/src/utils/json.js +62 -0
- package/src/utils/legacy-task-history.d.ts +8 -0
- package/src/utils/legacy-task-history.js +87 -0
- package/src/utils/logger.d.ts +12 -0
- package/src/utils/logger.js +52 -0
- package/src/utils/nx-cloud-utils.d.ts +3 -0
- package/src/utils/nx-cloud-utils.js +18 -0
- package/src/utils/nx-plugin.deprecated.d.ts +31 -0
- package/src/utils/nx-plugin.deprecated.js +20 -0
- package/src/utils/object-sort.d.ts +1 -0
- package/src/utils/object-sort.js +9 -0
- package/src/utils/output.d.ts +71 -0
- package/src/utils/output.js +240 -0
- package/src/utils/package-json.d.ts +103 -0
- package/src/utils/package-json.js +173 -0
- package/src/utils/package-manager.d.ts +100 -0
- package/src/utils/package-manager.js +404 -0
- package/src/utils/params.d.ts +137 -0
- package/src/utils/params.js +664 -0
- package/src/utils/path.d.ts +19 -0
- package/src/utils/path.js +37 -0
- package/src/utils/perf-logging.d.ts +1 -0
- package/src/utils/perf-logging.js +13 -0
- package/src/utils/plugins/core-plugins.d.ts +6 -0
- package/src/utils/plugins/core-plugins.js +109 -0
- package/src/utils/plugins/index.d.ts +4 -0
- package/src/utils/plugins/index.js +13 -0
- package/src/utils/plugins/installed-plugins.d.ts +5 -0
- package/src/utils/plugins/installed-plugins.js +76 -0
- package/src/utils/plugins/local-plugins.d.ts +4 -0
- package/src/utils/plugins/local-plugins.js +30 -0
- package/src/utils/plugins/output.d.ts +6 -0
- package/src/utils/plugins/output.js +111 -0
- package/src/utils/plugins/plugin-capabilities.d.ts +14 -0
- package/src/utils/plugins/plugin-capabilities.js +77 -0
- package/src/utils/powerpack.d.ts +5 -0
- package/src/utils/powerpack.js +33 -0
- package/src/utils/print-help.d.ts +11 -0
- package/src/utils/print-help.js +264 -0
- package/src/utils/project-graph-utils.d.ts +13 -0
- package/src/utils/project-graph-utils.js +73 -0
- package/src/utils/promised-based-queue.d.ts +6 -0
- package/src/utils/promised-based-queue.js +43 -0
- package/src/utils/serializable-error.d.ts +4 -0
- package/src/utils/serializable-error.js +33 -0
- package/src/utils/serialize-overrides-into-command-line.d.ts +3 -0
- package/src/utils/serialize-overrides-into-command-line.js +42 -0
- package/src/utils/serialize-target.d.ts +1 -0
- package/src/utils/serialize-target.js +6 -0
- package/src/utils/split-target.d.ts +3 -0
- package/src/utils/split-target.js +48 -0
- package/src/utils/strip-indents.d.ts +14 -0
- package/src/utils/strip-indents.js +23 -0
- package/src/utils/sync-generators.d.ts +64 -0
- package/src/utils/sync-generators.js +353 -0
- package/src/utils/task-history.d.ts +17 -0
- package/src/utils/task-history.js +51 -0
- package/src/utils/update-nxw.d.ts +2 -0
- package/src/utils/update-nxw.js +11 -0
- package/src/utils/versions.d.ts +1 -0
- package/src/utils/versions.js +4 -0
- package/src/utils/workspace-configuration-check.d.ts +1 -0
- package/src/utils/workspace-configuration-check.js +36 -0
- package/src/utils/workspace-context.d.ts +19 -0
- package/src/utils/workspace-context.js +103 -0
- package/src/utils/workspace-root.d.ts +6 -0
- package/src/utils/workspace-root.js +39 -0
- package/tasks-runners/default.d.ts +1 -0
- 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
|
+
}
|