[Python-checkins] bpo-32256: Make patchcheck.py work for out-of-tree builds (GH-4760)

Victor Stinner webhook-mailer at python.org
Fri Oct 19 20:49:45 EDT 2018


https://github.com/python/cpython/commit/aa95bfb5fee366aa58c90b7e1c77fc7e183dbf3a
commit: aa95bfb5fee366aa58c90b7e1c77fc7e183dbf3a
branch: master
author: Alexey Izbyshev <izbyshev at ispras.ru>
committer: Victor Stinner <vstinner at redhat.com>
date: 2018-10-20T02:49:41+02:00
summary:

bpo-32256: Make patchcheck.py work for out-of-tree builds (GH-4760)

Set SRCDIR as the current directory for git.

files:
M Tools/scripts/patchcheck.py

diff --git a/Tools/scripts/patchcheck.py b/Tools/scripts/patchcheck.py
index a1253d1de5bb..8a8480a0c22b 100755
--- a/Tools/scripts/patchcheck.py
+++ b/Tools/scripts/patchcheck.py
@@ -48,7 +48,9 @@ def get_git_branch():
     """Get the symbolic name for the current git branch"""
     cmd = "git rev-parse --abbrev-ref HEAD".split()
     try:
-        return subprocess.check_output(cmd, stderr=subprocess.DEVNULL)
+        return subprocess.check_output(cmd,
+                                       stderr=subprocess.DEVNULL,
+                                       cwd=SRCDIR)
     except subprocess.CalledProcessError:
         return None
 
@@ -60,7 +62,9 @@ def get_git_upstream_remote():
     """
     cmd = "git remote get-url upstream".split()
     try:
-        subprocess.check_output(cmd, stderr=subprocess.DEVNULL)
+        subprocess.check_output(cmd,
+                                stderr=subprocess.DEVNULL,
+                                cwd=SRCDIR)
     except subprocess.CalledProcessError:
         return "origin"
     return "upstream"
@@ -98,7 +102,9 @@ def changed_files(base_branch=None):
         else:
             cmd = 'git status --porcelain'
         filenames = []
-        with subprocess.Popen(cmd.split(), stdout=subprocess.PIPE) as st:
+        with subprocess.Popen(cmd.split(),
+                              stdout=subprocess.PIPE,
+                              cwd=SRCDIR) as st:
             for line in st.stdout:
                 line = line.decode().rstrip()
                 status_text, filename = line.split(maxsplit=1)



More information about the Python-checkins mailing list