From 4f18916c5c28321f363e85ee7ef3ee29bbf79d8e Mon Sep 17 00:00:00 2001 From: Tian Gao Date: Sat, 26 Apr 2025 15:43:23 -0700 Subject: [PATCH] gh-124703: Set return code to 1 when aborting process from pdb (#133013) --- Lib/pdb.py | 2 +- Lib/test/test_pdb.py | 4 ++-- .../Library/2025-04-26-15-43-23.gh-issue-124703.jc5auS.rst | 1 + 3 files changed, 4 insertions(+), 3 deletions(-) create mode 100644 Misc/NEWS.d/next/Library/2025-04-26-15-43-23.gh-issue-124703.jc5auS.rst diff --git a/Lib/pdb.py b/Lib/pdb.py index 380c6a56db72..5ade628e2d5d 100644 --- a/Lib/pdb.py +++ b/Lib/pdb.py @@ -1834,7 +1834,7 @@ class Pdb(bdb.Bdb, cmd.Cmd): reply = 'y' self.message('') if reply == 'y' or reply == '': - sys.exit(0) + sys.exit(1) elif reply.lower() == 'n': return diff --git a/Lib/test/test_pdb.py b/Lib/test/test_pdb.py index 60a41becea4c..741b5ab92856 100644 --- a/Lib/test/test_pdb.py +++ b/Lib/test/test_pdb.py @@ -4453,7 +4453,7 @@ class PdbTestInline(unittest.TestCase): y """ - stdout, stderr = self._run_script(script, commands) + stdout, stderr = self._run_script(script, commands, expected_returncode=1) self.assertIn("2", stdout) self.assertIn("Quit anyway", stdout) # Closing stdin will quit the debugger anyway so we need to confirm @@ -4483,7 +4483,7 @@ class PdbTestInline(unittest.TestCase): y """ - stdout, stderr = self._run_script(script, commands) + stdout, stderr = self._run_script(script, commands, expected_returncode=1) # Normal exit should not print anything to stderr self.assertEqual(stderr, "") # The quit prompt should be printed exactly once diff --git a/Misc/NEWS.d/next/Library/2025-04-26-15-43-23.gh-issue-124703.jc5auS.rst b/Misc/NEWS.d/next/Library/2025-04-26-15-43-23.gh-issue-124703.jc5auS.rst new file mode 100644 index 000000000000..54603dda39e9 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2025-04-26-15-43-23.gh-issue-124703.jc5auS.rst @@ -0,0 +1 @@ +Set return code to ``1`` when aborting process from :mod:`pdb`. -- 2.47.3