瀏覽代碼

Revert "Reland "depot_tools: Run using Python 3 by default.""

This reverts commit e9013eeb3d1d026d72549dea78dbba2a95ad8d5d.

Reason for revert: https://crbug.com/1064547

Original change's description:
> Reland "depot_tools: Run using Python 3 by default."
> 
> This is a reland of 01ed358917aa9f9f6314414ba3bb5e808bdedca2
> 
> * python_runner.sh, gclient, roll-dep and fetch will call vpython
>   (instead of vpython3) when running on Windows under git-bash.
> * vpython3 now detects when running on Windows under git-bash and
>   executes vpython3.bat instead.
> * vpython3.bat calls python3.exe directly instead of calling python3.bat.
> 
> Original change's description:
> > depot_tools: Run using Python 3 by default.
> >
> > Run gclient, roll-dep, fetch and custom git commands (i.e. git-cl, git-rebase-update, git-new-branch, etc.)
> > using vpython3 by default.
> >
> > Change-Id: I4eecddafa6ca4c5f82ec097615c79d2a741613e7
> > Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/2113550
> > Reviewed-by: Anthony Polito <apolito@google.com>
> > Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
> 
> Change-Id: I9829141d7ea26a67e655264430151f493e73a930
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/2118418
> Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org>
> Reviewed-by: Anthony Polito <apolito@google.com>

TBR=ehmaldonado@chromium.org,ajp@chromium.org,apolito@google.com,infra-scoped@luci-project-accounts.iam.gserviceaccount.com,sokcevic@google.com

Change-Id: Ia382d6e4e330f5a7a7a62e4d369c3fa16fc17333
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/2120956
Reviewed-by: Josip Sokcevic <sokcevic@google.com>
Commit-Queue: Josip Sokcevic <sokcevic@google.com>
Josip Sokcevic 5 年之前
父節點
當前提交
e2ac022f0b
共有 7 個文件被更改,包括 15 次插入41 次删除
  1. 2 8
      fetch
  2. 2 8
      gclient
  3. 7 9
      python_runner.sh
  4. 1 7
      roll-dep
  5. 0 1
      tests/gclient_smoketest.py
  6. 1 6
      vpython3
  7. 2 2
      vpython3.bat

+ 2 - 8
fetch

@@ -9,19 +9,13 @@ base_dir=$(dirname "$0")
 # standalone, but allow other PATH manipulations to take priority.
 # standalone, but allow other PATH manipulations to take priority.
 PATH=$PATH:$base_dir
 PATH=$PATH:$base_dir
 
 
-# MINGW will equal 0 if we're running on Windows under MinGW.
-MINGW=$(uname -s | grep MINGW > /dev/null; echo $?)
-
 if [[ $GCLIENT_PY3 == 1 ]]; then
 if [[ $GCLIENT_PY3 == 1 ]]; then
   # Explicitly run on Python 3
   # Explicitly run on Python 3
   PYTHONDONTWRITEBYTECODE=1 exec vpython3 "$base_dir/fetch.py" "$@"
   PYTHONDONTWRITEBYTECODE=1 exec vpython3 "$base_dir/fetch.py" "$@"
 elif [[ $GCLIENT_PY3 == 0 ]]; then
 elif [[ $GCLIENT_PY3 == 0 ]]; then
   # Explicitly run on Python 2
   # Explicitly run on Python 2
   PYTHONDONTWRITEBYTECODE=1 exec vpython "$base_dir/fetch.py" "$@"
   PYTHONDONTWRITEBYTECODE=1 exec vpython "$base_dir/fetch.py" "$@"
-elif [[ $MINGW = 0 ]]; then
-  # Run on Python 2 on Windows for now, allows default to be flipped.
-  PYTHONDONTWRITEBYTECODE=1 exec vpython "$base_dir/fetch.py" "$@"
 else
 else
-  # Run on Python 3, allows default to be flipped.
-  PYTHONDONTWRITEBYTECODE=1 exec vpython3 "$base_dir/fetch.py" "$@"
+  # Run on Python 2 for now, allows default to be flipped.
+  PYTHONDONTWRITEBYTECODE=1 exec vpython "$base_dir/fetch.py" "$@"
 fi
 fi

+ 2 - 8
gclient

@@ -26,19 +26,13 @@ fi
 # standalone, but allow other PATH manipulations to take priority.
 # standalone, but allow other PATH manipulations to take priority.
 PATH=$PATH:$base_dir
 PATH=$PATH:$base_dir
 
 
-# MINGW will equal 0 if we're running on Windows under MinGW.
-MINGW=$(uname -s | grep MINGW > /dev/null; echo $?)
-
 if [[ $GCLIENT_PY3 == 1 ]]; then
 if [[ $GCLIENT_PY3 == 1 ]]; then
   # Explicitly run on Python 3
   # Explicitly run on Python 3
   PYTHONDONTWRITEBYTECODE=1 exec vpython3 "$base_dir/gclient.py" "$@"
   PYTHONDONTWRITEBYTECODE=1 exec vpython3 "$base_dir/gclient.py" "$@"
 elif [[ $GCLIENT_PY3 == 0 ]]; then
 elif [[ $GCLIENT_PY3 == 0 ]]; then
   # Explicitly run on Python 2
   # Explicitly run on Python 2
   PYTHONDONTWRITEBYTECODE=1 exec vpython "$base_dir/gclient.py" "$@"
   PYTHONDONTWRITEBYTECODE=1 exec vpython "$base_dir/gclient.py" "$@"
-elif [[ $MINGW = 0 ]]; then
-  # Run on Python 2 on Windows for now, allows default to be flipped.
-  PYTHONDONTWRITEBYTECODE=1 exec vpython "$base_dir/gclient.py" "$@"
 else
 else
-  # Run on Python 3, allows default to be flipped.
-  PYTHONDONTWRITEBYTECODE=1 exec vpython3 "$base_dir/gclient.py" "$@"
+  # Run on Python 2 for now, allows default to be flipped.
+  PYTHONDONTWRITEBYTECODE=1 exec vpython "$base_dir/gclient.py" "$@"
 fi
 fi

+ 7 - 9
python_runner.sh

@@ -48,19 +48,17 @@ SCRIPT="${SCRIPT-${BASENAME//-/_}.py}"
 # standalone, but allow other PATH manipulations to take priority.
 # standalone, but allow other PATH manipulations to take priority.
 PATH=$PATH:$DEPOT_TOOLS
 PATH=$PATH:$DEPOT_TOOLS
 
 
-# MINGW will equal 0 if we're running on Windows under MinGW.
-MINGW=$(uname -s | grep MINGW > /dev/null; echo $?)
-
-if [[ $GCLIENT_PY3 = 1 ]]; then
+if [[ $PYTHON_DIRECT = 1 ]]; then
+  python.exe "$DEPOT_TOOLS\\$SCRIPT" "$@"
+elif [[ -e "$DEPOT_TOOLS/python.bat" && $OSTYPE = msys ]]; then
+    cmd.exe //c "$DEPOT_TOOLS\\vpython.bat" "$DEPOT_TOOLS\\$SCRIPT" "$@"
+elif [[ $GCLIENT_PY3 = 1 ]]; then
   # Explicitly run on Python 3
   # Explicitly run on Python 3
   vpython3 "$DEPOT_TOOLS/$SCRIPT" "$@"
   vpython3 "$DEPOT_TOOLS/$SCRIPT" "$@"
 elif [[ $GCLIENT_PY3 = 0 ]]; then
 elif [[ $GCLIENT_PY3 = 0 ]]; then
   # Explicitly run on Python 2
   # Explicitly run on Python 2
   vpython "$DEPOT_TOOLS/$SCRIPT" "$@"
   vpython "$DEPOT_TOOLS/$SCRIPT" "$@"
-elif [[ $MINGW = 0 ]]; then
-  # Run on Python 2 on Windows for now, allows default to be flipped.
-  vpython "$DEPOT_TOOLS/$SCRIPT" "$@"
 else
 else
-  # Run on Python 3, allows default to be flipped.
-  vpython3 "$DEPOT_TOOLS/$SCRIPT" "$@"
+  # Run on Python 2 for now, allows default to be flipped.
+  vpython "$DEPOT_TOOLS/$SCRIPT" "$@"
 fi
 fi

+ 1 - 7
roll-dep

@@ -9,19 +9,13 @@ base_dir=$(dirname "$0")
 # standalone, but allow other PATH manipulations to take priority.
 # standalone, but allow other PATH manipulations to take priority.
 PATH=$PATH:$base_dir
 PATH=$PATH:$base_dir
 
 
-# MINGW will equal 0 if we're running on Windows under MinGW.
-MINGW=$(uname -s | grep MINGW > /dev/null; echo $?)
-
 if [[ $GCLIENT_PY3 = 1 ]]; then
 if [[ $GCLIENT_PY3 = 1 ]]; then
   # Explicitly run on Python 3
   # Explicitly run on Python 3
   PYTHONDONTWRITEBYTECODE=1 exec vpython3 "$base_dir/roll_dep.py" "$@"
   PYTHONDONTWRITEBYTECODE=1 exec vpython3 "$base_dir/roll_dep.py" "$@"
 elif [[ $GCLIENT_PY3 = 0 ]]; then
 elif [[ $GCLIENT_PY3 = 0 ]]; then
   # Explicitly run on Python 2
   # Explicitly run on Python 2
   PYTHONDONTWRITEBYTECODE=1 exec vpython "$base_dir/roll_dep.py" "$@"
   PYTHONDONTWRITEBYTECODE=1 exec vpython "$base_dir/roll_dep.py" "$@"
-elif [[ $MINGW = 0 ]]; then
-  # Run on Python 2 on Windows for now, allows default to be flipped.
-  PYTHONDONTWRITEBYTECODE=1 exec vpython "$base_dir/roll_dep.py" "$@"
 else
 else
   # Run on Python 2 for now, allows default to be flipped.
   # Run on Python 2 for now, allows default to be flipped.
-  PYTHONDONTWRITEBYTECODE=1 exec vpython3 "$base_dir/roll_dep.py" "$@"
+  PYTHONDONTWRITEBYTECODE=1 exec vpython "$base_dir/roll_dep.py" "$@"
 fi
 fi

+ 0 - 1
tests/gclient_smoketest.py

@@ -40,7 +40,6 @@ class GClientSmokeBase(fake_repos.FakeReposTestBase):
     self.env['DEPOT_TOOLS_METRICS'] = '0'
     self.env['DEPOT_TOOLS_METRICS'] = '0'
     # Suppress Python 3 warnings and other test undesirables.
     # Suppress Python 3 warnings and other test undesirables.
     self.env['GCLIENT_TEST'] = '1'
     self.env['GCLIENT_TEST'] = '1'
-    self.env['GCLIENT_PY3'] = '0' if sys.version_info.major == 2 else '1'
     self.maxDiff = None
     self.maxDiff = None
 
 
   def gclient(self, cmd, cwd=None, error_ok=False):
   def gclient(self, cmd, cwd=None, error_ok=False):

+ 1 - 6
vpython3

@@ -39,14 +39,9 @@ base_dir=$(dirname "$0")
 source "$base_dir/cipd_bin_setup.sh"
 source "$base_dir/cipd_bin_setup.sh"
 cipd_bin_setup &> /dev/null
 cipd_bin_setup &> /dev/null
 
 
-# MINGW will equal 0 if we're running on Windows under MinGW.
-MINGW=$(uname -s | grep MINGW > /dev/null; echo $?)
-
 # If Python bootstrapping is not disabled, make sure Python has been
 # If Python bootstrapping is not disabled, make sure Python has been
 # bootstrapped and add it to the front of PATH.
 # bootstrapped and add it to the front of PATH.
-if [[ $MINGW = 0 ]]; then
-  cmd.exe //c $0.bat "$@"
-elif [[ $DEPOT_TOOLS_BOOTSTRAP_PYTHON3 != 0 ]]; then
+if [[ $MINGW != 0 && $DEPOT_TOOLS_BOOTSTRAP_PYTHON3 != 0 ]]; then
   if [[ ! -e $base_dir/python3_bin_reldir.txt ]]; then
   if [[ ! -e $base_dir/python3_bin_reldir.txt ]]; then
     source "$base_dir/bootstrap_python3"
     source "$base_dir/bootstrap_python3"
     bootstrap_python3
     bootstrap_python3

+ 2 - 2
vpython3.bat

@@ -6,7 +6,7 @@
 :: TODO(crbug.com/1003139): Remove.
 :: TODO(crbug.com/1003139): Remove.
 :: Add Python 3 to PATH to work around crbug.com/1003139.
 :: Add Python 3 to PATH to work around crbug.com/1003139.
 for /f %%i in (%~dp0python3_bin_reldir.txt) do set PYTHON3_BIN_RELDIR=%%i
 for /f %%i in (%~dp0python3_bin_reldir.txt) do set PYTHON3_BIN_RELDIR=%%i
-set PATH=%~dp0%PYTHON3_BIN_RELDIR%;%~dp0%PYTHON3_BIN_RELDIR%\Scripts;%~dp0%PYTHON3_BIN_RELDIR%\DLLs;%PATH%
+set PATH=%~dp0%PYTHON3_BIN_RELDIR%;%PATH%
 
 
 call "%~dp0\cipd_bin_setup.bat" > nul 2>&1
 call "%~dp0\cipd_bin_setup.bat" > nul 2>&1
-"%~dp0\.cipd_bin\vpython3.exe" -vpython-interpreter "%PYTHON3_BIN_RELDIR%\python3.exe" %*
+"%~dp0\.cipd_bin\vpython3.exe" -vpython-interpreter "%~dp0\python3.bat" %*