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

Miss Islington (bot) webhook-mailer at python.org
Fri Oct 19 21:21:48 EDT 2018


https://github.com/python/cpython/commit/1662bbf09fade0310d03736066e5c36611bb4b9b
commit: 1662bbf09fade0310d03736066e5c36611bb4b9b
branch: 3.7
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: GitHub <noreply at github.com>
date: 2018-10-19T18:21:43-07:00
summary:

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


Set SRCDIR as the current directory for git.
(cherry picked from commit aa95bfb5fee366aa58c90b7e1c77fc7e183dbf3a)

Co-authored-by: Alexey Izbyshev <izbyshev at ispras.ru>

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