From 74980db3470987b0493271f6355e7fa4574e4d2b Mon Sep 17 00:00:00 2001 From: Jason Jean Date: Wed, 16 Mar 2022 17:24:36 -0400 Subject: [PATCH] fix(core): undo removal of @nrwl/cli and add warning when it is imported (#9370) --- packages/cli/bin/nx.ts | 7 +++++++ packages/nx/src/shared/package-manager.ts | 4 ++++ packages/workspace/migrations.json | 6 +++--- .../generators/workspace/files/package.json__tmpl__ | 1 + ...-tao-and-cli-with-nx.ts => replace-tao-with-nx.ts} | 11 +++++------ 5 files changed, 20 insertions(+), 9 deletions(-) rename packages/workspace/src/migrations/update-13-9-0/{replace-tao-and-cli-with-nx.ts => replace-tao-with-nx.ts} (64%) diff --git a/packages/cli/bin/nx.ts b/packages/cli/bin/nx.ts index c4a549e1a9e5c..0ca0d7c26fa6f 100644 --- a/packages/cli/bin/nx.ts +++ b/packages/cli/bin/nx.ts @@ -1,2 +1,9 @@ #!/usr/bin/env node + +import { logger } from 'nx/src/shared/logger'; +import { getPackageManagerCommand } from 'nx/src/shared/package-manager'; + +logger.warn('Please update your global install of Nx'); +logger.warn(`- ${getPackageManagerCommand().addGlobal} nx`); + require('nx/bin/nx'); diff --git a/packages/nx/src/shared/package-manager.ts b/packages/nx/src/shared/package-manager.ts index 5ec98f914affa..692a2988d3867 100644 --- a/packages/nx/src/shared/package-manager.ts +++ b/packages/nx/src/shared/package-manager.ts @@ -8,6 +8,7 @@ export interface PackageManagerCommands { install: string; add: string; addDev: string; + addGlobal: string; rm: string; exec: string; list: string; @@ -44,6 +45,7 @@ export function getPackageManagerCommand( install: 'yarn', add: 'yarn add -W', addDev: 'yarn add -D -W', + addGlobal: 'yarn global add', rm: 'yarn remove', exec: 'yarn', run: (script: string, args: string) => `yarn ${script} ${args}`, @@ -59,6 +61,7 @@ export function getPackageManagerCommand( install: 'pnpm install --no-frozen-lockfile', // explicitly disable in case of CI add: 'pnpm add', addDev: 'pnpm add -D', + addGlobal: 'pnpm add -g', rm: 'pnpm rm', exec: useExec ? 'pnpm exec' : 'pnpx', run: (script: string, args: string) => `pnpm run ${script} -- ${args}`, @@ -72,6 +75,7 @@ export function getPackageManagerCommand( install: 'npm install', add: 'npm install', addDev: 'npm install -D', + addGlobal: 'npm install -g', rm: 'npm rm', exec: 'npx', run: (script: string, args: string) => `npm run ${script} -- ${args}`, diff --git a/packages/workspace/migrations.json b/packages/workspace/migrations.json index d0a1c1cacafa5..b8f580f1f99c8 100644 --- a/packages/workspace/migrations.json +++ b/packages/workspace/migrations.json @@ -42,11 +42,11 @@ "cli": "nx", "implementation": "./src/migrations/update-13-9-0/update-decorate-cli" }, - "13-9-0-replace-tao-and-cli-with-nx": { + "13-9-0-replace-tao-with-nx": { "version": "13.9.0-beta.0", - "description": "Replace @nrwl/tao and @nrwl/cli with nx", + "description": "Replace @nrwl/tao with nx", "cli": "nx", - "implementation": "./src/migrations/update-13-9-0/replace-tao-and-cli-with-nx" + "implementation": "./src/migrations/update-13-9-0/replace-tao-with-nx" } }, "packageJsonUpdates": { diff --git a/packages/workspace/src/generators/workspace/files/package.json__tmpl__ b/packages/workspace/src/generators/workspace/files/package.json__tmpl__ index 039552c859b74..cea5c41ac414e 100644 --- a/packages/workspace/src/generators/workspace/files/package.json__tmpl__ +++ b/packages/workspace/src/generators/workspace/files/package.json__tmpl__ @@ -10,6 +10,7 @@ "devDependencies": { <% if(cli === 'angular') { %>"@angular/cli": "<%= angularCliVersion %>",<% } %> "nx": "<%= nxVersion %>", + "@nrwl/cli": "<%= nxVersion %>", "@nrwl/workspace": "<%= nxVersion %>", "@types/node": "16.11.7", "typescript": "<%= typescriptVersion %>", diff --git a/packages/workspace/src/migrations/update-13-9-0/replace-tao-and-cli-with-nx.ts b/packages/workspace/src/migrations/update-13-9-0/replace-tao-with-nx.ts similarity index 64% rename from packages/workspace/src/migrations/update-13-9-0/replace-tao-and-cli-with-nx.ts rename to packages/workspace/src/migrations/update-13-9-0/replace-tao-with-nx.ts index f28780110ef64..536bbf1fcc073 100644 --- a/packages/workspace/src/migrations/update-13-9-0/replace-tao-and-cli-with-nx.ts +++ b/packages/workspace/src/migrations/update-13-9-0/replace-tao-with-nx.ts @@ -1,22 +1,21 @@ import { Tree, updateJson } from '@nrwl/devkit'; -export function replaceTaoAndCLIWithNx(host: Tree) { +export function replaceTaoWithNx(host: Tree) { updateJson(host, 'package.json', (json: any) => { if (json.dependencies['@nrwl/workspace']) { json.dependencies['nx'] = json.dependencies['@nrwl/workspace']; } else if (json.devDependencies['@nrwl/workspace']) { json.devDependencies['nx'] = json.devDependencies['@nrwl/workspace']; } - removeTaoAndCLI(json.dependencies); - removeTaoAndCLI(json.devDependencies); + removeTao(json.dependencies); + removeTao(json.devDependencies); return json; }); } -function removeTaoAndCLI(json: any) { +function removeTao(json: any) { if (!json) return; json['@nrwl/tao'] = undefined; - json['@nrwl/cli'] = undefined; } -export default replaceTaoAndCLIWithNx; +export default replaceTaoWithNx;