From 11f09a16aaad3498f94d67667cb78445cac57205 Mon Sep 17 00:00:00 2001
From: Sascha  Dens <SaschaDens@users.noreply.github.com>
Date: Tue, 9 Jan 2018 18:34:46 +0100
Subject: [PATCH] Extend --scripts-version to include .tar.gz format (#3725)

* Extend --scripts-version to include .tar.gz format

* Removal of debug console.log
---
 packages/create-react-app/createReactApp.js | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/packages/create-react-app/createReactApp.js b/packages/create-react-app/createReactApp.js
index 420dde1b1..f91608f34 100755
--- a/packages/create-react-app/createReactApp.js
+++ b/packages/create-react-app/createReactApp.js
@@ -85,6 +85,11 @@ const program = new commander.Command(packageJson.name)
         'https://mysite.com/my-react-scripts-0.8.2.tgz'
       )}`
     );
+    console.log(
+      `      - a .tar.gz archive: ${chalk.green(
+        'https://mysite.com/my-react-scripts-0.8.2.tar.gz'
+      )}`
+    );
     console.log(
       `    It is not needed unless you specifically want to use a fork.`
     );
@@ -432,7 +437,7 @@ function extractStream(stream, dest) {
 
 // Extract package name from tarball url or path.
 function getPackageName(installPackage) {
-  if (installPackage.indexOf('.tgz') > -1) {
+  if (installPackage.match(/^.+\.(tgz|tar\.gz)$/)) {
     return getTemporaryDirectory()
       .then(obj => {
         let stream;
@@ -455,7 +460,7 @@ function getPackageName(installPackage) {
           `Could not extract the package name from the archive: ${err.message}`
         );
         const assumedProjectName = installPackage.match(
-          /^.+\/(.+?)(?:-\d+.+)?\.tgz$/
+          /^.+\/(.+?)(?:-\d+.+)?\.(tgz|tar\.gz)$/
         )[1];
         console.log(
           `Based on the filename, assuming it is "${chalk.cyan(
-- 
GitLab