@depup/angular__cli 21.2.1-depup.1
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/LICENSE +21 -0
- package/README.md +36 -0
- package/bin/bootstrap.js +33 -0
- package/bin/ng.js +71 -0
- package/bin/package.json +3 -0
- package/changes.json +30 -0
- package/lib/cli/index.d.ts +11 -0
- package/lib/cli/index.js +109 -0
- package/lib/cli/index.js.map +1 -0
- package/lib/code-examples.db +0 -0
- package/lib/config/schema.json +6150 -0
- package/lib/config/workspace-schema.d.ts +1025 -0
- package/lib/config/workspace-schema.js +133 -0
- package/lib/config/workspace-schema.js.map +1 -0
- package/lib/init.d.ts +8 -0
- package/lib/init.js +162 -0
- package/lib/init.js.map +1 -0
- package/package.json +103 -0
- package/src/analytics/analytics-collector.d.ts +35 -0
- package/src/analytics/analytics-collector.js +195 -0
- package/src/analytics/analytics-collector.js.map +1 -0
- package/src/analytics/analytics-parameters.d.ts +101 -0
- package/src/analytics/analytics-parameters.js +107 -0
- package/src/analytics/analytics-parameters.js.map +1 -0
- package/src/analytics/analytics.d.ts +27 -0
- package/src/analytics/analytics.js +183 -0
- package/src/analytics/analytics.js.map +1 -0
- package/src/command-builder/architect-base-command-module.d.ts +30 -0
- package/src/command-builder/architect-base-command-module.js +244 -0
- package/src/command-builder/architect-base-command-module.js.map +1 -0
- package/src/command-builder/architect-command-module.d.ts +28 -0
- package/src/command-builder/architect-command-module.js +218 -0
- package/src/command-builder/architect-command-module.js.map +1 -0
- package/src/command-builder/command-module.d.ts +73 -0
- package/src/command-builder/command-module.js +245 -0
- package/src/command-builder/command-module.js.map +1 -0
- package/src/command-builder/command-runner.d.ts +9 -0
- package/src/command-builder/command-runner.js +195 -0
- package/src/command-builder/command-runner.js.map +1 -0
- package/src/command-builder/definitions.d.ts +41 -0
- package/src/command-builder/definitions.js +20 -0
- package/src/command-builder/definitions.js.map +1 -0
- package/src/command-builder/schematics-command-module.d.ts +41 -0
- package/src/command-builder/schematics-command-module.js +408 -0
- package/src/command-builder/schematics-command-module.js.map +1 -0
- package/src/command-builder/utilities/command.d.ts +13 -0
- package/src/command-builder/utilities/command.js +39 -0
- package/src/command-builder/utilities/command.js.map +1 -0
- package/src/command-builder/utilities/json-help.d.ts +37 -0
- package/src/command-builder/utilities/json-help.js +92 -0
- package/src/command-builder/utilities/json-help.js.map +1 -0
- package/src/command-builder/utilities/json-schema.d.ts +64 -0
- package/src/command-builder/utilities/json-schema.js +349 -0
- package/src/command-builder/utilities/json-schema.js.map +1 -0
- package/src/command-builder/utilities/normalize-options-middleware.d.ts +18 -0
- package/src/command-builder/utilities/normalize-options-middleware.js +37 -0
- package/src/command-builder/utilities/normalize-options-middleware.js.map +1 -0
- package/src/command-builder/utilities/schematic-engine-host.d.ts +15 -0
- package/src/command-builder/utilities/schematic-engine-host.js +179 -0
- package/src/command-builder/utilities/schematic-engine-host.js.map +1 -0
- package/src/command-builder/utilities/schematic-workflow.d.ts +14 -0
- package/src/command-builder/utilities/schematic-workflow.js +70 -0
- package/src/command-builder/utilities/schematic-workflow.js.map +1 -0
- package/src/commands/add/cli.d.ts +38 -0
- package/src/commands/add/cli.js +623 -0
- package/src/commands/add/cli.js.map +1 -0
- package/src/commands/add/long-description.md +7 -0
- package/src/commands/analytics/cli.d.ts +16 -0
- package/src/commands/analytics/cli.js +34 -0
- package/src/commands/analytics/cli.js.map +1 -0
- package/src/commands/analytics/info/cli.d.ts +16 -0
- package/src/commands/analytics/info/cli.js +25 -0
- package/src/commands/analytics/info/cli.js.map +1 -0
- package/src/commands/analytics/long-description.md +20 -0
- package/src/commands/analytics/settings/cli.d.ts +35 -0
- package/src/commands/analytics/settings/cli.js +54 -0
- package/src/commands/analytics/settings/cli.js.map +1 -0
- package/src/commands/build/cli.d.ts +16 -0
- package/src/commands/build/cli.js +21 -0
- package/src/commands/build/cli.js.map +1 -0
- package/src/commands/build/long-description.md +18 -0
- package/src/commands/cache/clean/cli.d.ts +17 -0
- package/src/commands/cache/clean/cli.js +32 -0
- package/src/commands/cache/clean/cli.js.map +1 -0
- package/src/commands/cache/cli.d.ts +17 -0
- package/src/commands/cache/cli.js +36 -0
- package/src/commands/cache/cli.js.map +1 -0
- package/src/commands/cache/info/cli.d.ts +20 -0
- package/src/commands/cache/info/cli.js +139 -0
- package/src/commands/cache/info/cli.js.map +1 -0
- package/src/commands/cache/long-description.md +53 -0
- package/src/commands/cache/settings/cli.d.ts +27 -0
- package/src/commands/cache/settings/cli.js +41 -0
- package/src/commands/cache/settings/cli.js.map +1 -0
- package/src/commands/cache/utilities.d.ts +11 -0
- package/src/commands/cache/utilities.js +47 -0
- package/src/commands/cache/utilities.js.map +1 -0
- package/src/commands/command-config.d.ts +17 -0
- package/src/commands/command-config.js +116 -0
- package/src/commands/command-config.js.map +1 -0
- package/src/commands/completion/cli.d.ts +16 -0
- package/src/commands/completion/cli.js +61 -0
- package/src/commands/completion/cli.js.map +1 -0
- package/src/commands/completion/long-description.md +67 -0
- package/src/commands/config/cli.d.ts +24 -0
- package/src/commands/config/cli.js +150 -0
- package/src/commands/config/cli.js.map +1 -0
- package/src/commands/config/long-description.md +13 -0
- package/src/commands/deploy/cli.d.ts +17 -0
- package/src/commands/deploy/cli.js +38 -0
- package/src/commands/deploy/cli.js.map +1 -0
- package/src/commands/deploy/long-description.md +22 -0
- package/src/commands/e2e/cli.d.ts +18 -0
- package/src/commands/e2e/cli.js +42 -0
- package/src/commands/e2e/cli.js.map +1 -0
- package/src/commands/extract-i18n/cli.d.ts +17 -0
- package/src/commands/extract-i18n/cli.js +48 -0
- package/src/commands/extract-i18n/cli.js.map +1 -0
- package/src/commands/generate/cli.d.ts +47 -0
- package/src/commands/generate/cli.js +189 -0
- package/src/commands/generate/cli.js.map +1 -0
- package/src/commands/lint/cli.d.ts +17 -0
- package/src/commands/lint/cli.js +25 -0
- package/src/commands/lint/cli.js.map +1 -0
- package/src/commands/lint/long-description.md +20 -0
- package/src/commands/make-this-awesome/cli.d.ts +17 -0
- package/src/commands/make-this-awesome/cli.js +36 -0
- package/src/commands/make-this-awesome/cli.js.map +1 -0
- package/src/commands/mcp/cli.d.ts +20 -0
- package/src/commands/mcp/cli.js +74 -0
- package/src/commands/mcp/cli.js.map +1 -0
- package/src/commands/mcp/constants.d.ts +10 -0
- package/src/commands/mcp/constants.js +16 -0
- package/src/commands/mcp/constants.js.map +1 -0
- package/src/commands/mcp/devserver.d.ts +85 -0
- package/src/commands/mcp/devserver.js +112 -0
- package/src/commands/mcp/devserver.js.map +1 -0
- package/src/commands/mcp/host.d.ts +97 -0
- package/src/commands/mcp/host.js +118 -0
- package/src/commands/mcp/host.js.map +1 -0
- package/src/commands/mcp/mcp-server.d.ts +192 -0
- package/src/commands/mcp/mcp-server.js +155 -0
- package/src/commands/mcp/mcp-server.js.map +1 -0
- package/src/commands/mcp/resources/ai-tutor.md +824 -0
- package/src/commands/mcp/resources/best-practices.md +54 -0
- package/src/commands/mcp/resources/instructions.d.ts +9 -0
- package/src/commands/mcp/resources/instructions.js +26 -0
- package/src/commands/mcp/resources/instructions.js.map +1 -0
- package/src/commands/mcp/shared-options.d.ts +12 -0
- package/src/commands/mcp/shared-options.js +22 -0
- package/src/commands/mcp/shared-options.js.map +1 -0
- package/src/commands/mcp/tools/ai-tutor.d.ts +12 -0
- package/src/commands/mcp/tools/ai-tutor.js +59 -0
- package/src/commands/mcp/tools/ai-tutor.js.map +1 -0
- package/src/commands/mcp/tools/best-practices.d.ts +13 -0
- package/src/commands/mcp/tools/best-practices.js +187 -0
- package/src/commands/mcp/tools/best-practices.js.map +1 -0
- package/src/commands/mcp/tools/build.d.ts +37 -0
- package/src/commands/mcp/tools/build.js +89 -0
- package/src/commands/mcp/tools/build.js.map +1 -0
- package/src/commands/mcp/tools/devserver/devserver-start.d.ts +31 -0
- package/src/commands/mcp/tools/devserver/devserver-start.js +91 -0
- package/src/commands/mcp/tools/devserver/devserver-start.js.map +1 -0
- package/src/commands/mcp/tools/devserver/devserver-stop.d.ts +31 -0
- package/src/commands/mcp/tools/devserver/devserver-stop.js +68 -0
- package/src/commands/mcp/tools/devserver/devserver-stop.js.map +1 -0
- package/src/commands/mcp/tools/devserver/devserver-wait-for-build.d.ts +41 -0
- package/src/commands/mcp/tools/devserver/devserver-wait-for-build.js +104 -0
- package/src/commands/mcp/tools/devserver/devserver-wait-for-build.js.map +1 -0
- package/src/commands/mcp/tools/doc-search.d.ts +21 -0
- package/src/commands/mcp/tools/doc-search.js +324 -0
- package/src/commands/mcp/tools/doc-search.js.map +1 -0
- package/src/commands/mcp/tools/e2e.d.ts +44 -0
- package/src/commands/mcp/tools/e2e.js +87 -0
- package/src/commands/mcp/tools/e2e.js.map +1 -0
- package/src/commands/mcp/tools/examples/database-discovery.d.ts +34 -0
- package/src/commands/mcp/tools/examples/database-discovery.js +87 -0
- package/src/commands/mcp/tools/examples/database-discovery.js.map +1 -0
- package/src/commands/mcp/tools/examples/database.d.ts +35 -0
- package/src/commands/mcp/tools/examples/database.js +125 -0
- package/src/commands/mcp/tools/examples/database.js.map +1 -0
- package/src/commands/mcp/tools/examples/index.d.ts +26 -0
- package/src/commands/mcp/tools/examples/index.js +149 -0
- package/src/commands/mcp/tools/examples/index.js.map +1 -0
- package/src/commands/mcp/tools/examples/query-escaper.d.ts +20 -0
- package/src/commands/mcp/tools/examples/query-escaper.js +68 -0
- package/src/commands/mcp/tools/examples/query-escaper.js.map +1 -0
- package/src/commands/mcp/tools/examples/runtime-database.d.ts +10 -0
- package/src/commands/mcp/tools/examples/runtime-database.js +192 -0
- package/src/commands/mcp/tools/examples/runtime-database.js.map +1 -0
- package/src/commands/mcp/tools/examples/schemas.d.ts +29 -0
- package/src/commands/mcp/tools/examples/schemas.js +101 -0
- package/src/commands/mcp/tools/examples/schemas.js.map +1 -0
- package/src/commands/mcp/tools/examples/utils.d.ts +14 -0
- package/src/commands/mcp/tools/examples/utils.js +31 -0
- package/src/commands/mcp/tools/examples/utils.js.map +1 -0
- package/src/commands/mcp/tools/modernize.d.ts +43 -0
- package/src/commands/mcp/tools/modernize.js +165 -0
- package/src/commands/mcp/tools/modernize.js.map +1 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/analyze-for-unsupported-zone-uses.d.ts +17 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/analyze-for-unsupported-zone-uses.js +62 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/analyze-for-unsupported-zone-uses.js.map +1 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/migrate-single-file.d.ts +12 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/migrate-single-file.js +73 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/migrate-single-file.js.map +1 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/migrate-test-file.d.ts +11 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/migrate-test-file.js +60 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/migrate-test-file.js.map +1 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/prompts.d.ts +15 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/prompts.js +238 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/prompts.js.map +1 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/send-debug-message.d.ts +10 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/send-debug-message.js +20 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/send-debug-message.js.map +1 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/ts-utils.d.ts +35 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/ts-utils.js +136 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/ts-utils.js.map +1 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/types.d.ts +13 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/types.js +10 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/types.js.map +1 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/zoneless-migration.d.ts +16 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/zoneless-migration.js +224 -0
- package/src/commands/mcp/tools/onpush-zoneless-migration/zoneless-migration.js.map +1 -0
- package/src/commands/mcp/tools/projects.d.ts +47 -0
- package/src/commands/mcp/tools/projects.js +523 -0
- package/src/commands/mcp/tools/projects.js.map +1 -0
- package/src/commands/mcp/tools/test.d.ts +35 -0
- package/src/commands/mcp/tools/test.js +79 -0
- package/src/commands/mcp/tools/test.js.map +1 -0
- package/src/commands/mcp/tools/tool-registry.d.ts +39 -0
- package/src/commands/mcp/tools/tool-registry.js +35 -0
- package/src/commands/mcp/tools/tool-registry.js.map +1 -0
- package/src/commands/mcp/utils.d.ts +25 -0
- package/src/commands/mcp/utils.js +44 -0
- package/src/commands/mcp/utils.js.map +1 -0
- package/src/commands/mcp/workspace-utils.d.ts +53 -0
- package/src/commands/mcp/workspace-utils.js +138 -0
- package/src/commands/mcp/workspace-utils.js.map +1 -0
- package/src/commands/new/cli.d.ts +27 -0
- package/src/commands/new/cli.js +76 -0
- package/src/commands/new/cli.js.map +1 -0
- package/src/commands/new/long-description.md +15 -0
- package/src/commands/run/cli.d.ts +25 -0
- package/src/commands/run/cli.js +89 -0
- package/src/commands/run/cli.js.map +1 -0
- package/src/commands/run/long-description.md +10 -0
- package/src/commands/serve/cli.d.ts +16 -0
- package/src/commands/serve/cli.js +20 -0
- package/src/commands/serve/cli.js.map +1 -0
- package/src/commands/test/cli.d.ts +16 -0
- package/src/commands/test/cli.js +21 -0
- package/src/commands/test/cli.js.map +1 -0
- package/src/commands/test/long-description.md +2 -0
- package/src/commands/update/cli.d.ts +34 -0
- package/src/commands/update/cli.js +531 -0
- package/src/commands/update/cli.js.map +1 -0
- package/src/commands/update/long-description.md +22 -0
- package/src/commands/update/schematic/collection.json +9 -0
- package/src/commands/update/schematic/index.d.ts +11 -0
- package/src/commands/update/schematic/index.js +715 -0
- package/src/commands/update/schematic/index.js.map +1 -0
- package/src/commands/update/schematic/schema.d.ts +51 -0
- package/src/commands/update/schematic/schema.js +16 -0
- package/src/commands/update/schematic/schema.js.map +1 -0
- package/src/commands/update/schematic/schema.json +64 -0
- package/src/commands/update/utilities/cli-version.d.ts +48 -0
- package/src/commands/update/utilities/cli-version.js +196 -0
- package/src/commands/update/utilities/cli-version.js.map +1 -0
- package/src/commands/update/utilities/constants.d.ts +12 -0
- package/src/commands/update/utilities/constants.js +16 -0
- package/src/commands/update/utilities/constants.js.map +1 -0
- package/src/commands/update/utilities/git.d.ts +36 -0
- package/src/commands/update/utilities/git.js +148 -0
- package/src/commands/update/utilities/git.js.map +1 -0
- package/src/commands/update/utilities/migration.d.ts +32 -0
- package/src/commands/update/utilities/migration.js +267 -0
- package/src/commands/update/utilities/migration.js.map +1 -0
- package/src/commands/version/cli.d.ts +36 -0
- package/src/commands/version/cli.js +117 -0
- package/src/commands/version/cli.js.map +1 -0
- package/src/commands/version/version-info.d.ts +46 -0
- package/src/commands/version/version-info.js +107 -0
- package/src/commands/version/version-info.js.map +1 -0
- package/src/package-managers/discovery.d.ts +23 -0
- package/src/package-managers/discovery.js +104 -0
- package/src/package-managers/discovery.js.map +1 -0
- package/src/package-managers/error.d.ts +43 -0
- package/src/package-managers/error.js +41 -0
- package/src/package-managers/error.js.map +1 -0
- package/src/package-managers/factory.d.ts +30 -0
- package/src/package-managers/factory.js +137 -0
- package/src/package-managers/factory.js.map +1 -0
- package/src/package-managers/host.d.ts +86 -0
- package/src/package-managers/host.js +80 -0
- package/src/package-managers/host.js.map +1 -0
- package/src/package-managers/index.d.ts +13 -0
- package/src/package-managers/index.js +17 -0
- package/src/package-managers/index.js.map +1 -0
- package/src/package-managers/logger.d.ts +27 -0
- package/src/package-managers/logger.js +10 -0
- package/src/package-managers/logger.js.map +1 -0
- package/src/package-managers/package-manager-descriptor.d.ts +245 -0
- package/src/package-managers/package-manager-descriptor.js +175 -0
- package/src/package-managers/package-manager-descriptor.js.map +1 -0
- package/src/package-managers/package-manager.d.ts +191 -0
- package/src/package-managers/package-manager.js +496 -0
- package/src/package-managers/package-manager.js.map +1 -0
- package/src/package-managers/package-metadata.d.ts +91 -0
- package/src/package-managers/package-metadata.js +10 -0
- package/src/package-managers/package-metadata.js.map +1 -0
- package/src/package-managers/package-tree.d.ts +23 -0
- package/src/package-managers/package-tree.js +10 -0
- package/src/package-managers/package-tree.js.map +1 -0
- package/src/package-managers/parsers.d.ts +170 -0
- package/src/package-managers/parsers.js +467 -0
- package/src/package-managers/parsers.js.map +1 -0
- package/src/utilities/color.d.ts +9 -0
- package/src/utilities/color.js +28 -0
- package/src/utilities/color.js.map +1 -0
- package/src/utilities/completion.d.ts +30 -0
- package/src/utilities/completion.js +270 -0
- package/src/utilities/completion.js.map +1 -0
- package/src/utilities/config.d.ts +38 -0
- package/src/utilities/config.js +369 -0
- package/src/utilities/config.js.map +1 -0
- package/src/utilities/environment-options.d.ts +25 -0
- package/src/utilities/environment-options.js +60 -0
- package/src/utilities/environment-options.js.map +1 -0
- package/src/utilities/eol.d.ts +20 -0
- package/src/utilities/eol.js +35 -0
- package/src/utilities/eol.js.map +1 -0
- package/src/utilities/error.d.ts +18 -0
- package/src/utilities/error.js +41 -0
- package/src/utilities/error.js.map +1 -0
- package/src/utilities/find-up.d.ts +21 -0
- package/src/utilities/find-up.js +67 -0
- package/src/utilities/find-up.js.map +1 -0
- package/src/utilities/json-file.d.ts +24 -0
- package/src/utilities/json-file.js +179 -0
- package/src/utilities/json-file.js.map +1 -0
- package/src/utilities/log-file.d.ts +13 -0
- package/src/utilities/log-file.js +28 -0
- package/src/utilities/log-file.js.map +1 -0
- package/src/utilities/memoize.d.ts +15 -0
- package/src/utilities/memoize.js +64 -0
- package/src/utilities/memoize.js.map +1 -0
- package/src/utilities/package-metadata.d.ts +58 -0
- package/src/utilities/package-metadata.js +265 -0
- package/src/utilities/package-metadata.js.map +1 -0
- package/src/utilities/prettier.d.ts +13 -0
- package/src/utilities/prettier.js +46 -0
- package/src/utilities/prettier.js.map +1 -0
- package/src/utilities/project.d.ts +8 -0
- package/src/utilities/project.js +81 -0
- package/src/utilities/project.js.map +1 -0
- package/src/utilities/prompt.d.ts +17 -0
- package/src/utilities/prompt.js +90 -0
- package/src/utilities/prompt.js.map +1 -0
- package/src/utilities/tty.d.ts +16 -0
- package/src/utilities/tty.js +23 -0
- package/src/utilities/tty.js.map +1 -0
- package/src/utilities/version.d.ts +16 -0
- package/src/utilities/version.js +26 -0
- package/src/utilities/version.js.map +1 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["cli.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,6FAAwF;AAExF,sDAAiD;AAEjD,MAAqB,kBACnB,SAAQ,iDAAsB;IAG9B,WAAW,GAAG,KAAK,CAAC;IACpB,OAAO,GAAG,iBAAiB,CAAC;IAC5B,OAAO,GAAG,6BAAY,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC;IACxC,QAAQ,GAAG,iEAAiE,CAAC;IAC7E,mBAAmB,CAAsB;CAC1C;AATD,qCASC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
import { ArchitectCommandModule } from '../../command-builder/architect-command-module';
|
|
9
|
+
import { CommandModuleImplementation } from '../../command-builder/command-module';
|
|
10
|
+
export default class TestCommandModule extends ArchitectCommandModule implements CommandModuleImplementation {
|
|
11
|
+
multiTarget: boolean;
|
|
12
|
+
command: string;
|
|
13
|
+
aliases: string[] | undefined;
|
|
14
|
+
describe: string;
|
|
15
|
+
longDescriptionPath: string;
|
|
16
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
8
|
+
*/
|
|
9
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
+
const node_path_1 = require("node:path");
|
|
11
|
+
const architect_command_module_1 = require("../../command-builder/architect-command-module");
|
|
12
|
+
const command_config_1 = require("../command-config");
|
|
13
|
+
class TestCommandModule extends architect_command_module_1.ArchitectCommandModule {
|
|
14
|
+
multiTarget = true;
|
|
15
|
+
command = 'test [project]';
|
|
16
|
+
aliases = command_config_1.RootCommands['test'].aliases;
|
|
17
|
+
describe = 'Runs unit tests in a project.';
|
|
18
|
+
longDescriptionPath = (0, node_path_1.join)(__dirname, 'long-description.md');
|
|
19
|
+
}
|
|
20
|
+
exports.default = TestCommandModule;
|
|
21
|
+
//# sourceMappingURL=cli.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["cli.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAEH,yCAAiC;AACjC,6FAAwF;AAExF,sDAAiD;AAEjD,MAAqB,iBACnB,SAAQ,iDAAsB;IAG9B,WAAW,GAAG,IAAI,CAAC;IACnB,OAAO,GAAG,gBAAgB,CAAC;IAC3B,OAAO,GAAG,6BAAY,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;IACvC,QAAQ,GAAG,+BAA+B,CAAC;IAC3C,mBAAmB,GAAG,IAAA,gBAAI,EAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;CAC9D;AATD,oCASC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright Google LLC All Rights Reserved.
|
|
4
|
+
*
|
|
5
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
6
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
7
|
+
*/
|
|
8
|
+
import { Argv } from 'yargs';
|
|
9
|
+
import { CommandModule, CommandScope, Options } from '../../command-builder/command-module';
|
|
10
|
+
interface UpdateCommandArgs {
|
|
11
|
+
packages?: string[];
|
|
12
|
+
force: boolean;
|
|
13
|
+
next: boolean;
|
|
14
|
+
'migrate-only'?: boolean;
|
|
15
|
+
name?: string;
|
|
16
|
+
from?: string;
|
|
17
|
+
to?: string;
|
|
18
|
+
'allow-dirty': boolean;
|
|
19
|
+
verbose: boolean;
|
|
20
|
+
'create-commits': boolean;
|
|
21
|
+
}
|
|
22
|
+
export default class UpdateCommandModule extends CommandModule<UpdateCommandArgs> {
|
|
23
|
+
scope: CommandScope;
|
|
24
|
+
protected shouldReportAnalytics: boolean;
|
|
25
|
+
private readonly resolvePaths;
|
|
26
|
+
command: string;
|
|
27
|
+
describe: string;
|
|
28
|
+
longDescriptionPath: string;
|
|
29
|
+
builder(localYargs: Argv): Argv<UpdateCommandArgs>;
|
|
30
|
+
run(options: Options<UpdateCommandArgs>): Promise<number | void>;
|
|
31
|
+
private migrateOnly;
|
|
32
|
+
private updatePackagesAndMigrate;
|
|
33
|
+
}
|
|
34
|
+
export {};
|
|
@@ -0,0 +1,531 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* @license
|
|
4
|
+
* Copyright Google LLC All Rights Reserved.
|
|
5
|
+
*
|
|
6
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
7
|
+
* found in the LICENSE file at https://angular.dev/license
|
|
8
|
+
*/
|
|
9
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
12
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
13
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
14
|
+
}
|
|
15
|
+
Object.defineProperty(o, k2, desc);
|
|
16
|
+
}) : (function(o, m, k, k2) {
|
|
17
|
+
if (k2 === undefined) k2 = k;
|
|
18
|
+
o[k2] = m[k];
|
|
19
|
+
}));
|
|
20
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
21
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
22
|
+
}) : function(o, v) {
|
|
23
|
+
o["default"] = v;
|
|
24
|
+
});
|
|
25
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
26
|
+
var ownKeys = function(o) {
|
|
27
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
28
|
+
var ar = [];
|
|
29
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
30
|
+
return ar;
|
|
31
|
+
};
|
|
32
|
+
return ownKeys(o);
|
|
33
|
+
};
|
|
34
|
+
return function (mod) {
|
|
35
|
+
if (mod && mod.__esModule) return mod;
|
|
36
|
+
var result = {};
|
|
37
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
38
|
+
__setModuleDefault(result, mod);
|
|
39
|
+
return result;
|
|
40
|
+
};
|
|
41
|
+
})();
|
|
42
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
43
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
44
|
+
};
|
|
45
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
46
|
+
const tools_1 = require("@angular-devkit/schematics/tools");
|
|
47
|
+
const listr2_1 = require("listr2");
|
|
48
|
+
const node_fs_1 = require("node:fs");
|
|
49
|
+
const node_module_1 = require("node:module");
|
|
50
|
+
const path = __importStar(require("node:path"));
|
|
51
|
+
const npm_package_arg_1 = __importDefault(require("npm-package-arg"));
|
|
52
|
+
const command_module_1 = require("../../command-builder/command-module");
|
|
53
|
+
const schematic_engine_host_1 = require("../../command-builder/utilities/schematic-engine-host");
|
|
54
|
+
const color_1 = require("../../utilities/color");
|
|
55
|
+
const environment_options_1 = require("../../utilities/environment-options");
|
|
56
|
+
const error_1 = require("../../utilities/error");
|
|
57
|
+
const cli_version_1 = require("./utilities/cli-version");
|
|
58
|
+
const constants_1 = require("./utilities/constants");
|
|
59
|
+
const git_1 = require("./utilities/git");
|
|
60
|
+
const migration_1 = require("./utilities/migration");
|
|
61
|
+
class CommandError extends Error {
|
|
62
|
+
}
|
|
63
|
+
const UPDATE_SCHEMATIC_COLLECTION = path.join(__dirname, 'schematic/collection.json');
|
|
64
|
+
class UpdateCommandModule extends command_module_1.CommandModule {
|
|
65
|
+
scope = command_module_1.CommandScope.In;
|
|
66
|
+
shouldReportAnalytics = false;
|
|
67
|
+
resolvePaths = [__dirname, this.context.root];
|
|
68
|
+
command = 'update [packages..]';
|
|
69
|
+
describe = 'Updates your workspace and its dependencies. See https://update.angular.dev/.';
|
|
70
|
+
longDescriptionPath = path.join(__dirname, 'long-description.md');
|
|
71
|
+
builder(localYargs) {
|
|
72
|
+
return localYargs
|
|
73
|
+
.positional('packages', {
|
|
74
|
+
description: 'The names of package(s) to update.',
|
|
75
|
+
type: 'string',
|
|
76
|
+
array: true,
|
|
77
|
+
})
|
|
78
|
+
.option('force', {
|
|
79
|
+
description: 'Ignore peer dependency version mismatches.',
|
|
80
|
+
type: 'boolean',
|
|
81
|
+
default: false,
|
|
82
|
+
})
|
|
83
|
+
.option('next', {
|
|
84
|
+
description: 'Use the prerelease version, including beta and RCs.',
|
|
85
|
+
type: 'boolean',
|
|
86
|
+
default: false,
|
|
87
|
+
})
|
|
88
|
+
.option('migrate-only', {
|
|
89
|
+
description: 'Only perform a migration, do not update the installed version.',
|
|
90
|
+
type: 'boolean',
|
|
91
|
+
})
|
|
92
|
+
.option('name', {
|
|
93
|
+
description: 'The name of the migration to run. Only available when a single package is updated.',
|
|
94
|
+
type: 'string',
|
|
95
|
+
conflicts: ['to', 'from'],
|
|
96
|
+
})
|
|
97
|
+
.option('from', {
|
|
98
|
+
description: 'Version from which to migrate from. ' +
|
|
99
|
+
`Only available when a single package is updated, and only with 'migrate-only'.`,
|
|
100
|
+
type: 'string',
|
|
101
|
+
implies: ['migrate-only'],
|
|
102
|
+
conflicts: ['name'],
|
|
103
|
+
})
|
|
104
|
+
.option('to', {
|
|
105
|
+
describe: 'Version up to which to apply migrations. Only available when a single package is updated, ' +
|
|
106
|
+
`and only with 'migrate-only' option. Requires 'from' to be specified. Default to the installed version detected.`,
|
|
107
|
+
type: 'string',
|
|
108
|
+
implies: ['from', 'migrate-only'],
|
|
109
|
+
conflicts: ['name'],
|
|
110
|
+
})
|
|
111
|
+
.option('allow-dirty', {
|
|
112
|
+
describe: 'Whether to allow updating when the repository contains modified or untracked files.',
|
|
113
|
+
type: 'boolean',
|
|
114
|
+
default: false,
|
|
115
|
+
})
|
|
116
|
+
.option('verbose', {
|
|
117
|
+
describe: 'Display additional details about internal operations during execution.',
|
|
118
|
+
type: 'boolean',
|
|
119
|
+
default: false,
|
|
120
|
+
})
|
|
121
|
+
.option('create-commits', {
|
|
122
|
+
describe: 'Create source control commits for updates and migrations.',
|
|
123
|
+
type: 'boolean',
|
|
124
|
+
alias: ['C'],
|
|
125
|
+
default: false,
|
|
126
|
+
})
|
|
127
|
+
.middleware((argv) => {
|
|
128
|
+
if (argv.name) {
|
|
129
|
+
argv['migrate-only'] = true;
|
|
130
|
+
}
|
|
131
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
132
|
+
return argv;
|
|
133
|
+
})
|
|
134
|
+
.check(({ packages, 'allow-dirty': allowDirty, 'migrate-only': migrateOnly }) => {
|
|
135
|
+
const { logger } = this.context;
|
|
136
|
+
// This allows the user to easily reset any changes from the update.
|
|
137
|
+
if (packages?.length && !(0, git_1.checkCleanGit)(this.context.root)) {
|
|
138
|
+
if (allowDirty) {
|
|
139
|
+
logger.warn('Repository is not clean. Update changes will be mixed with pre-existing changes.');
|
|
140
|
+
}
|
|
141
|
+
else {
|
|
142
|
+
throw new command_module_1.CommandModuleError('Repository is not clean. Please commit or stash any changes before updating.');
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
if (migrateOnly) {
|
|
146
|
+
if (packages?.length !== 1) {
|
|
147
|
+
throw new command_module_1.CommandModuleError(`A single package must be specified when using the 'migrate-only' option.`);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
return true;
|
|
151
|
+
})
|
|
152
|
+
.strict();
|
|
153
|
+
}
|
|
154
|
+
async run(options) {
|
|
155
|
+
const { logger, packageManager } = this.context;
|
|
156
|
+
// Check if the current installed CLI version is older than the latest compatible version.
|
|
157
|
+
// Skip when running `ng update` without a package name as this will not trigger an actual update.
|
|
158
|
+
if (!environment_options_1.disableVersionCheck && options.packages?.length) {
|
|
159
|
+
const cliVersionToInstall = await (0, cli_version_1.checkCLIVersion)(options.packages, logger, packageManager, options.next);
|
|
160
|
+
if (cliVersionToInstall) {
|
|
161
|
+
logger.warn('The installed Angular CLI version is outdated.\n' +
|
|
162
|
+
`Installing a temporary Angular CLI versioned ${cliVersionToInstall} to perform the update.`);
|
|
163
|
+
return (0, cli_version_1.runTempBinary)(`@angular/cli@${cliVersionToInstall}`, packageManager, process.argv.slice(2));
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
const packages = [];
|
|
167
|
+
for (const request of options.packages ?? []) {
|
|
168
|
+
try {
|
|
169
|
+
const packageIdentifier = (0, npm_package_arg_1.default)(request);
|
|
170
|
+
// only registry identifiers are supported
|
|
171
|
+
if (!packageIdentifier.registry) {
|
|
172
|
+
logger.error(`Package '${request}' is not a registry package identifer.`);
|
|
173
|
+
return 1;
|
|
174
|
+
}
|
|
175
|
+
if (packages.some((v) => v.name === packageIdentifier.name)) {
|
|
176
|
+
logger.error(`Duplicate package '${packageIdentifier.name}' specified.`);
|
|
177
|
+
return 1;
|
|
178
|
+
}
|
|
179
|
+
if (options.migrateOnly && packageIdentifier.rawSpec !== '*') {
|
|
180
|
+
logger.warn('Package specifier has no effect when using "migrate-only" option.');
|
|
181
|
+
}
|
|
182
|
+
// Wildcard uses the next tag if next option is used otherwise use latest tag.
|
|
183
|
+
// Wildcard is present if no selector is provided on the command line.
|
|
184
|
+
if (packageIdentifier.rawSpec === '*') {
|
|
185
|
+
packageIdentifier.fetchSpec = options.next ? 'next' : 'latest';
|
|
186
|
+
packageIdentifier.type = 'tag';
|
|
187
|
+
}
|
|
188
|
+
packages.push(packageIdentifier);
|
|
189
|
+
}
|
|
190
|
+
catch (e) {
|
|
191
|
+
(0, error_1.assertIsError)(e);
|
|
192
|
+
logger.error(e.message);
|
|
193
|
+
return 1;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
logger.info(`Using package manager: ${color_1.colors.gray(packageManager.name)}`);
|
|
197
|
+
logger.info('Collecting installed dependencies...');
|
|
198
|
+
const rootDependencies = await packageManager.getProjectDependencies();
|
|
199
|
+
logger.info(`Found ${rootDependencies.size} dependencies.`);
|
|
200
|
+
const workflow = new tools_1.NodeWorkflow(this.context.root, {
|
|
201
|
+
packageManager: packageManager.name,
|
|
202
|
+
packageManagerForce: await (0, cli_version_1.shouldForcePackageManager)(packageManager, logger, options.verbose),
|
|
203
|
+
// __dirname -> favor @schematics/update from this package
|
|
204
|
+
// Otherwise, use packages from the active workspace (migrations)
|
|
205
|
+
resolvePaths: this.resolvePaths,
|
|
206
|
+
schemaValidation: true,
|
|
207
|
+
engineHostCreator: (options) => new schematic_engine_host_1.SchematicEngineHost(options.resolvePaths),
|
|
208
|
+
});
|
|
209
|
+
if (packages.length === 0) {
|
|
210
|
+
// Show status
|
|
211
|
+
const { success } = await (0, migration_1.executeSchematic)(workflow, logger, UPDATE_SCHEMATIC_COLLECTION, 'update', {
|
|
212
|
+
force: options.force,
|
|
213
|
+
next: options.next,
|
|
214
|
+
verbose: options.verbose,
|
|
215
|
+
packageManager: packageManager.name,
|
|
216
|
+
packages: [],
|
|
217
|
+
});
|
|
218
|
+
return success ? 0 : 1;
|
|
219
|
+
}
|
|
220
|
+
return options.migrateOnly
|
|
221
|
+
? this.migrateOnly(workflow, (options.packages ?? [])[0], rootDependencies, options, packageManager)
|
|
222
|
+
: this.updatePackagesAndMigrate(workflow, rootDependencies, options, packages, packageManager);
|
|
223
|
+
}
|
|
224
|
+
async migrateOnly(workflow, packageName, rootDependencies, options, packageManager) {
|
|
225
|
+
const { logger } = this.context;
|
|
226
|
+
let packageDependency = rootDependencies.get(packageName);
|
|
227
|
+
let packagePath = packageDependency?.path;
|
|
228
|
+
let packageNode;
|
|
229
|
+
if (!packageDependency) {
|
|
230
|
+
const installed = await packageManager.getInstalledPackage(packageName);
|
|
231
|
+
if (installed) {
|
|
232
|
+
packageDependency = installed;
|
|
233
|
+
packagePath = installed.path;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
if (packagePath) {
|
|
237
|
+
packageNode = await readPackageManifest(path.join(packagePath, 'package.json'));
|
|
238
|
+
}
|
|
239
|
+
if (!packageNode) {
|
|
240
|
+
const jsonPath = findPackageJson(this.context.root, packageName);
|
|
241
|
+
if (jsonPath) {
|
|
242
|
+
packageNode = await readPackageManifest(jsonPath);
|
|
243
|
+
if (!packagePath) {
|
|
244
|
+
packagePath = path.dirname(jsonPath);
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
if (!packageNode || !packagePath) {
|
|
249
|
+
logger.error('Package is not installed.');
|
|
250
|
+
return 1;
|
|
251
|
+
}
|
|
252
|
+
const updateMetadata = packageNode['ng-update'];
|
|
253
|
+
let migrations = updateMetadata?.migrations;
|
|
254
|
+
if (migrations === undefined) {
|
|
255
|
+
logger.error('Package does not provide migrations.');
|
|
256
|
+
return 1;
|
|
257
|
+
}
|
|
258
|
+
else if (typeof migrations !== 'string') {
|
|
259
|
+
logger.error('Package contains a malformed migrations field.');
|
|
260
|
+
return 1;
|
|
261
|
+
}
|
|
262
|
+
else if (path.posix.isAbsolute(migrations) || path.win32.isAbsolute(migrations)) {
|
|
263
|
+
logger.error('Package contains an invalid migrations field. Absolute paths are not permitted.');
|
|
264
|
+
return 1;
|
|
265
|
+
}
|
|
266
|
+
// Normalize slashes
|
|
267
|
+
migrations = migrations.replace(/\\/g, '/');
|
|
268
|
+
if (migrations.startsWith('../')) {
|
|
269
|
+
logger.error('Package contains an invalid migrations field. Paths outside the package root are not permitted.');
|
|
270
|
+
return 1;
|
|
271
|
+
}
|
|
272
|
+
// Check if it is a package-local location
|
|
273
|
+
const localMigrations = path.join(packagePath, migrations);
|
|
274
|
+
if ((0, node_fs_1.existsSync)(localMigrations)) {
|
|
275
|
+
migrations = localMigrations;
|
|
276
|
+
}
|
|
277
|
+
else {
|
|
278
|
+
// Try to resolve from package location.
|
|
279
|
+
// This avoids issues with package hoisting.
|
|
280
|
+
try {
|
|
281
|
+
const packageRequire = (0, node_module_1.createRequire)(packagePath + '/');
|
|
282
|
+
migrations = packageRequire.resolve(migrations, { paths: this.resolvePaths });
|
|
283
|
+
}
|
|
284
|
+
catch (e) {
|
|
285
|
+
(0, error_1.assertIsError)(e);
|
|
286
|
+
if (e.code === 'MODULE_NOT_FOUND') {
|
|
287
|
+
logger.error('Migrations for package were not found.');
|
|
288
|
+
}
|
|
289
|
+
else {
|
|
290
|
+
logger.error(`Unable to resolve migrations for package. [${e.message}]`);
|
|
291
|
+
}
|
|
292
|
+
return 1;
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
if (options.name) {
|
|
296
|
+
return (0, migration_1.executeMigration)(workflow, logger, packageName, migrations, options.name, options.createCommits);
|
|
297
|
+
}
|
|
298
|
+
const from = (0, cli_version_1.coerceVersionNumber)(options.from);
|
|
299
|
+
if (!from) {
|
|
300
|
+
logger.error(`"from" value [${options.from}] is not a valid version.`);
|
|
301
|
+
return 1;
|
|
302
|
+
}
|
|
303
|
+
return (0, migration_1.executeMigrations)(workflow, logger, packageName, migrations, from, options.to || packageNode.version, options.createCommits);
|
|
304
|
+
}
|
|
305
|
+
// eslint-disable-next-line max-lines-per-function
|
|
306
|
+
async updatePackagesAndMigrate(workflow, rootDependencies, options, packages, packageManager) {
|
|
307
|
+
const { logger } = this.context;
|
|
308
|
+
const logVerbose = (message) => {
|
|
309
|
+
if (options.verbose) {
|
|
310
|
+
logger.info(message);
|
|
311
|
+
}
|
|
312
|
+
};
|
|
313
|
+
const requests = [];
|
|
314
|
+
// Validate packages actually are part of the workspace
|
|
315
|
+
for (const pkg of packages) {
|
|
316
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
317
|
+
const node = rootDependencies.get(pkg.name);
|
|
318
|
+
if (!node) {
|
|
319
|
+
logger.error(`Package '${pkg.name}' is not a dependency.`);
|
|
320
|
+
return 1;
|
|
321
|
+
}
|
|
322
|
+
// If a specific version is requested and matches the installed version, skip.
|
|
323
|
+
if (pkg.type === 'version' && node.version === pkg.fetchSpec) {
|
|
324
|
+
logger.info(`Package '${pkg.name}' is already at '${pkg.fetchSpec}'.`);
|
|
325
|
+
continue;
|
|
326
|
+
}
|
|
327
|
+
requests.push({ identifier: pkg, node });
|
|
328
|
+
}
|
|
329
|
+
if (requests.length === 0) {
|
|
330
|
+
return 0;
|
|
331
|
+
}
|
|
332
|
+
logger.info('Fetching dependency metadata from registry...');
|
|
333
|
+
const packagesToUpdate = [];
|
|
334
|
+
for (const { identifier: requestIdentifier, node } of requests) {
|
|
335
|
+
const packageName = requestIdentifier.name;
|
|
336
|
+
let manifest = null;
|
|
337
|
+
try {
|
|
338
|
+
manifest = await packageManager.getManifest(requestIdentifier);
|
|
339
|
+
}
|
|
340
|
+
catch (e) {
|
|
341
|
+
(0, error_1.assertIsError)(e);
|
|
342
|
+
logger.error(`Error fetching manifest for '${packageName}': ` + e.message);
|
|
343
|
+
return 1;
|
|
344
|
+
}
|
|
345
|
+
if (!manifest) {
|
|
346
|
+
logger.error(`Package specified by '${requestIdentifier.raw}' does not exist within the registry.`);
|
|
347
|
+
return 1;
|
|
348
|
+
}
|
|
349
|
+
if (manifest.version === node.version) {
|
|
350
|
+
logger.info(`Package '${packageName}' is already up to date.`);
|
|
351
|
+
continue;
|
|
352
|
+
}
|
|
353
|
+
if (constants_1.ANGULAR_PACKAGES_REGEXP.test(node.name)) {
|
|
354
|
+
const { name, version } = node;
|
|
355
|
+
const toBeInstalledMajorVersion = +manifest.version.split('.')[0];
|
|
356
|
+
const currentMajorVersion = +version.split('.')[0];
|
|
357
|
+
if (toBeInstalledMajorVersion - currentMajorVersion > 1) {
|
|
358
|
+
// Only allow updating a single version at a time.
|
|
359
|
+
if (currentMajorVersion < 6) {
|
|
360
|
+
// Before version 6, the major versions were not always sequential.
|
|
361
|
+
// Example @angular/core skipped version 3, @angular/cli skipped versions 2-5.
|
|
362
|
+
logger.error(`Updating multiple major versions of '${name}' at once is not supported. Please migrate each major version individually.\n` +
|
|
363
|
+
`For more information about the update process, see https://update.angular.dev/.`);
|
|
364
|
+
}
|
|
365
|
+
else {
|
|
366
|
+
const nextMajorVersionFromCurrent = currentMajorVersion + 1;
|
|
367
|
+
logger.error(`Updating multiple major versions of '${name}' at once is not supported. Please migrate each major version individually.\n` +
|
|
368
|
+
`Run 'ng update ${name}@${nextMajorVersionFromCurrent}' in your workspace directory ` +
|
|
369
|
+
`to update to latest '${nextMajorVersionFromCurrent}.x' version of '${name}'.\n\n` +
|
|
370
|
+
`For more information about the update process, see https://update.angular.dev/?v=${currentMajorVersion}.0-${nextMajorVersionFromCurrent}.0`);
|
|
371
|
+
}
|
|
372
|
+
return 1;
|
|
373
|
+
}
|
|
374
|
+
}
|
|
375
|
+
packagesToUpdate.push(requestIdentifier.toString());
|
|
376
|
+
}
|
|
377
|
+
if (packagesToUpdate.length === 0) {
|
|
378
|
+
return 0;
|
|
379
|
+
}
|
|
380
|
+
const { success } = await (0, migration_1.executeSchematic)(workflow, logger, UPDATE_SCHEMATIC_COLLECTION, 'update', {
|
|
381
|
+
verbose: options.verbose,
|
|
382
|
+
force: options.force,
|
|
383
|
+
next: options.next,
|
|
384
|
+
packageManager: this.context.packageManager.name,
|
|
385
|
+
packages: packagesToUpdate,
|
|
386
|
+
});
|
|
387
|
+
if (success) {
|
|
388
|
+
const { root: commandRoot } = this.context;
|
|
389
|
+
const ignorePeerDependencies = await (0, cli_version_1.shouldForcePackageManager)(packageManager, logger, options.verbose);
|
|
390
|
+
const tasks = new listr2_1.Listr([
|
|
391
|
+
{
|
|
392
|
+
title: 'Cleaning node modules directory',
|
|
393
|
+
async task(_, task) {
|
|
394
|
+
try {
|
|
395
|
+
await node_fs_1.promises.rm(path.join(commandRoot, 'node_modules'), {
|
|
396
|
+
force: true,
|
|
397
|
+
recursive: true,
|
|
398
|
+
maxRetries: 3,
|
|
399
|
+
});
|
|
400
|
+
}
|
|
401
|
+
catch (e) {
|
|
402
|
+
(0, error_1.assertIsError)(e);
|
|
403
|
+
if (e.code === 'ENOENT') {
|
|
404
|
+
task.skip('Cleaning not required. Node modules directory not found.');
|
|
405
|
+
}
|
|
406
|
+
}
|
|
407
|
+
},
|
|
408
|
+
},
|
|
409
|
+
{
|
|
410
|
+
title: 'Installing packages',
|
|
411
|
+
async task() {
|
|
412
|
+
try {
|
|
413
|
+
await packageManager.install({
|
|
414
|
+
ignorePeerDependencies,
|
|
415
|
+
});
|
|
416
|
+
}
|
|
417
|
+
catch (e) {
|
|
418
|
+
throw new CommandError('Unable to install packages');
|
|
419
|
+
}
|
|
420
|
+
},
|
|
421
|
+
},
|
|
422
|
+
]);
|
|
423
|
+
try {
|
|
424
|
+
await tasks.run();
|
|
425
|
+
}
|
|
426
|
+
catch (e) {
|
|
427
|
+
if (e instanceof CommandError) {
|
|
428
|
+
return 1;
|
|
429
|
+
}
|
|
430
|
+
throw e;
|
|
431
|
+
}
|
|
432
|
+
}
|
|
433
|
+
if (success && options.createCommits) {
|
|
434
|
+
if (!(0, migration_1.commitChanges)(logger, `Angular CLI update for packages - ${packagesToUpdate.join(', ')}`)) {
|
|
435
|
+
return 1;
|
|
436
|
+
}
|
|
437
|
+
}
|
|
438
|
+
// This is a temporary workaround to allow data to be passed back from the update schematic
|
|
439
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
440
|
+
const migrations = global.externalMigrations;
|
|
441
|
+
if (success && migrations) {
|
|
442
|
+
const rootRequire = (0, node_module_1.createRequire)(this.context.root + '/');
|
|
443
|
+
for (const migration of migrations) {
|
|
444
|
+
// Resolve the package from the workspace root, as otherwise it will be resolved from the temp
|
|
445
|
+
// installed CLI version.
|
|
446
|
+
let packagePath;
|
|
447
|
+
logVerbose(`Resolving migration package '${migration.package}' from '${this.context.root}'...`);
|
|
448
|
+
try {
|
|
449
|
+
try {
|
|
450
|
+
packagePath = path.dirname(
|
|
451
|
+
// This may fail if the `package.json` is not exported as an entry point
|
|
452
|
+
rootRequire.resolve(path.join(migration.package, 'package.json')));
|
|
453
|
+
}
|
|
454
|
+
catch (e) {
|
|
455
|
+
(0, error_1.assertIsError)(e);
|
|
456
|
+
if (e.code === 'MODULE_NOT_FOUND') {
|
|
457
|
+
// Fallback to trying to resolve the package's main entry point
|
|
458
|
+
packagePath = rootRequire.resolve(migration.package);
|
|
459
|
+
}
|
|
460
|
+
else {
|
|
461
|
+
throw e;
|
|
462
|
+
}
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
catch (e) {
|
|
466
|
+
(0, error_1.assertIsError)(e);
|
|
467
|
+
if (e.code === 'MODULE_NOT_FOUND') {
|
|
468
|
+
logVerbose(e.toString());
|
|
469
|
+
logger.error(`Migrations for package (${migration.package}) were not found.` +
|
|
470
|
+
' The package could not be found in the workspace.');
|
|
471
|
+
}
|
|
472
|
+
else {
|
|
473
|
+
logger.error(`Unable to resolve migrations for package (${migration.package}). [${e.message}]`);
|
|
474
|
+
}
|
|
475
|
+
return 1;
|
|
476
|
+
}
|
|
477
|
+
let migrations;
|
|
478
|
+
// Check if it is a package-local location
|
|
479
|
+
const localMigrations = path.join(packagePath, migration.collection);
|
|
480
|
+
if ((0, node_fs_1.existsSync)(localMigrations)) {
|
|
481
|
+
migrations = localMigrations;
|
|
482
|
+
}
|
|
483
|
+
else {
|
|
484
|
+
// Try to resolve from package location.
|
|
485
|
+
// This avoids issues with package hoisting.
|
|
486
|
+
try {
|
|
487
|
+
const packageRequire = (0, node_module_1.createRequire)(packagePath + '/');
|
|
488
|
+
migrations = packageRequire.resolve(migration.collection);
|
|
489
|
+
}
|
|
490
|
+
catch (e) {
|
|
491
|
+
(0, error_1.assertIsError)(e);
|
|
492
|
+
if (e.code === 'MODULE_NOT_FOUND') {
|
|
493
|
+
logger.error(`Migrations for package (${migration.package}) were not found.`);
|
|
494
|
+
}
|
|
495
|
+
else {
|
|
496
|
+
logger.error(`Unable to resolve migrations for package (${migration.package}). [${e.message}]`);
|
|
497
|
+
}
|
|
498
|
+
return 1;
|
|
499
|
+
}
|
|
500
|
+
}
|
|
501
|
+
const result = await (0, migration_1.executeMigrations)(workflow, logger, migration.package, migrations, migration.from, migration.to, options.createCommits);
|
|
502
|
+
// A non-zero value is a failure for the package's migrations
|
|
503
|
+
if (result !== 0) {
|
|
504
|
+
return result;
|
|
505
|
+
}
|
|
506
|
+
}
|
|
507
|
+
}
|
|
508
|
+
return success ? 0 : 1;
|
|
509
|
+
}
|
|
510
|
+
}
|
|
511
|
+
exports.default = UpdateCommandModule;
|
|
512
|
+
async function readPackageManifest(manifestPath) {
|
|
513
|
+
try {
|
|
514
|
+
const content = await node_fs_1.promises.readFile(manifestPath, 'utf8');
|
|
515
|
+
return JSON.parse(content);
|
|
516
|
+
}
|
|
517
|
+
catch {
|
|
518
|
+
return undefined;
|
|
519
|
+
}
|
|
520
|
+
}
|
|
521
|
+
function findPackageJson(workspaceDir, packageName) {
|
|
522
|
+
try {
|
|
523
|
+
const projectRequire = (0, node_module_1.createRequire)(path.join(workspaceDir, 'package.json'));
|
|
524
|
+
const packageJsonPath = projectRequire.resolve(`${packageName}/package.json`);
|
|
525
|
+
return packageJsonPath;
|
|
526
|
+
}
|
|
527
|
+
catch {
|
|
528
|
+
return undefined;
|
|
529
|
+
}
|
|
530
|
+
}
|
|
531
|
+
//# sourceMappingURL=cli.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["cli.ts"],"names":[],"mappings":"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"}
|