From 1471fa97ff6133bb786af7df99af0c07d40a8453 Mon Sep 17 00:00:00 2001
From: ahmedmenaem <ahmed.menaem@almtar.com>
Date: Sun, 29 Dec 2019 11:43:36 +0200
Subject: [PATCH] add warning signal in case of create-react-app was installed
 globally

---
 packages/create-react-app/createReactApp.js | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/packages/create-react-app/createReactApp.js b/packages/create-react-app/createReactApp.js
index bd60bed0d..b7ac0d809 100755
--- a/packages/create-react-app/createReactApp.js
+++ b/packages/create-react-app/createReactApp.js
@@ -143,6 +143,14 @@ const program = new commander.Command(packageJson.name)
       )}`
     );
     console.log();
+
+    if (isPackageInstalledGlobally('create-react-app')) {
+      console.log(
+        `    [Please make sure you are using npx] ${chalk.yellow(
+          'global installation for create-react-app is deprecated.'
+        )}`
+      );
+    }
   })
   .parse(process.argv);
 
@@ -330,6 +338,18 @@ function createApp(
   );
 }
 
+function isPackageInstalledGlobally(packageName) {
+  try {
+    const pathToGlobalPackages = execSync('npm root -g');
+    const packages = execSync(`ls ${pathToGlobalPackages}`)
+      .toString()
+      .split('\n');
+    return packages.includes(packageName);
+  } catch (e) {
+    return false;
+  }
+}
+
 function shouldUseYarn() {
   try {
     execSync('yarnpkg --version', { stdio: 'ignore' });
-- 
GitLab