From fa6b3f1caa0bf248bae8951cb50fcd1de8df3f94 Mon Sep 17 00:00:00 2001 From: Oleg Iarygin Date: Thu, 6 Apr 2023 05:41:19 +0400 Subject: [PATCH 1/3] Fix Popen.wait() deadlock in patchcheck.py --- Tools/patchcheck/patchcheck.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Tools/patchcheck/patchcheck.py b/Tools/patchcheck/patchcheck.py index 6dcf612066199c..44a6fb8c660cd2 100755 --- a/Tools/patchcheck/patchcheck.py +++ b/Tools/patchcheck/patchcheck.py @@ -130,9 +130,10 @@ def changed_files(base_branch=None): with subprocess.Popen(cmd.split(), stdout=subprocess.PIPE, cwd=SRCDIR) as st: - if st.wait() != 0: + git_file_status, _ = st.communicate() + if st.returncode != 0: sys.exit(f'error running {cmd}') - for line in st.stdout: + for line in git_file_status.splitlines(): line = line.decode().rstrip() status_text, filename = line.split(maxsplit=1) status = set(status_text) From 2edc1713f3bfb50c5a2c61eb3d2bd75cea058479 Mon Sep 17 00:00:00 2001 From: Oleg Iarygin Date: Thu, 6 Apr 2023 06:19:53 +0400 Subject: [PATCH 2/3] Add a news entry --- .../Tools-Demos/2023-04-06-06-19-39.gh-issue-103300.nnE7Be.rst | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 Misc/NEWS.d/next/Tools-Demos/2023-04-06-06-19-39.gh-issue-103300.nnE7Be.rst diff --git a/Misc/NEWS.d/next/Tools-Demos/2023-04-06-06-19-39.gh-issue-103300.nnE7Be.rst b/Misc/NEWS.d/next/Tools-Demos/2023-04-06-06-19-39.gh-issue-103300.nnE7Be.rst new file mode 100644 index 00000000000000..2ebcdf0f45e677 --- /dev/null +++ b/Misc/NEWS.d/next/Tools-Demos/2023-04-06-06-19-39.gh-issue-103300.nnE7Be.rst @@ -0,0 +1,3 @@ +:source:`Tools/patchcheck/patchcheck.py` no longer deadlocks trying to +process a branch with a large diff relative to ``main``. Patch by Oleg +Iarygin. From 0993b96a7b3907dfe1b0a9551f38194feb0d5eed Mon Sep 17 00:00:00 2001 From: Oleg Iarygin Date: Thu, 6 Apr 2023 13:02:23 +0400 Subject: [PATCH 3/3] Delete 2023-04-06-06-19-39.gh-issue-103300.nnE7Be.rst --- .../Tools-Demos/2023-04-06-06-19-39.gh-issue-103300.nnE7Be.rst | 3 --- 1 file changed, 3 deletions(-) delete mode 100644 Misc/NEWS.d/next/Tools-Demos/2023-04-06-06-19-39.gh-issue-103300.nnE7Be.rst diff --git a/Misc/NEWS.d/next/Tools-Demos/2023-04-06-06-19-39.gh-issue-103300.nnE7Be.rst b/Misc/NEWS.d/next/Tools-Demos/2023-04-06-06-19-39.gh-issue-103300.nnE7Be.rst deleted file mode 100644 index 2ebcdf0f45e677..00000000000000 --- a/Misc/NEWS.d/next/Tools-Demos/2023-04-06-06-19-39.gh-issue-103300.nnE7Be.rst +++ /dev/null @@ -1,3 +0,0 @@ -:source:`Tools/patchcheck/patchcheck.py` no longer deadlocks trying to -process a branch with a large diff relative to ``main``. Patch by Oleg -Iarygin.