From 7e605098ff374d1d7d7ee3824191ec16c3fd749a Mon Sep 17 00:00:00 2001 From: Alan Agius <17563226+alan-agius4@users.noreply.github.com> Date: Thu, 5 Mar 2026 13:06:55 +0000 Subject: [PATCH] fix(@angular/cli): conditionally quote package names when adding dependencies based on host requirements Complex range specifiers that include shell special characters (e.g., '>', '<') can be misinterpreted when not quoted. This change ensures that version ranges are enclosed in quotes when needed to prevent such issues. --- packages/angular/cli/src/package-managers/package-manager.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/angular/cli/src/package-managers/package-manager.ts b/packages/angular/cli/src/package-managers/package-manager.ts index de3172107d8d..0dfb89e57371 100644 --- a/packages/angular/cli/src/package-managers/package-manager.ts +++ b/packages/angular/cli/src/package-managers/package-manager.ts @@ -323,7 +323,9 @@ export class PackageManager { ignoreScripts ? this.descriptor.ignoreScriptsFlag : '', ].filter((flag) => flag); - const args = [this.descriptor.addCommand, packageName, ...flags]; + const specifier = this.host.requiresQuoting ? `"${packageName}"` : packageName; + const args = [this.descriptor.addCommand, specifier, ...flags]; + await this.#run(args, options); this.#dependencyCache = null;