]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
[3.13] gh-143046: Make asyncio REPL respect the `-q` flag (quiet mode) (GH-143047...
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Mon, 22 Dec 2025 08:18:28 +0000 (09:18 +0100)
committerGitHub <noreply@github.com>
Mon, 22 Dec 2025 08:18:28 +0000 (13:48 +0530)
gh-143046: Make asyncio REPL respect the `-q` flag (quiet mode) (GH-143047)
(cherry picked from commit 6213a512bf42464e35ae5090358b80aaa64904cc)

Co-authored-by: Bartosz Sławecki <bartosz@ilikepython.com>
Lib/asyncio/__main__.py
Lib/test/test_repl.py
Misc/NEWS.d/next/Library/2025-12-21-17-44-28.gh-issue-143046.GBa5Ip.rst [new file with mode: 0644]

index 62f65192df70912f8de26ce34c1a6b3b2a53f5fe..e1b9026dd57dcb7d6ddc02e1e02001c98306fa02 100644 (file)
@@ -84,14 +84,15 @@ class REPLThread(threading.Thread):
         global return_code
 
         try:
-            banner = (
-                f'asyncio REPL {sys.version} on {sys.platform}\n'
-                f'Use "await" directly instead of "asyncio.run()".\n'
-                f'Type "help", "copyright", "credits" or "license" '
-                f'for more information.\n'
-            )
-
-            console.write(banner)
+            if not sys.flags.quiet:
+                banner = (
+                    f'asyncio REPL {sys.version} on {sys.platform}\n'
+                    f'Use "await" directly instead of "asyncio.run()".\n'
+                    f'Type "help", "copyright", "credits" or "license" '
+                    f'for more information.\n'
+                )
+
+                console.write(banner)
 
             if startup_path := os.getenv("PYTHONSTARTUP"):
                 sys.audit("cpython.run_startup", startup_path)
index 58bd2b5d916858c6850456f833028678d37fa1ae..17bc53d20c39d2fd4d453b297d41fc58377a405d 100644 (file)
@@ -409,6 +409,12 @@ class TestAsyncioREPL(unittest.TestCase):
         expected = "toplevel contextvar test: ok"
         self.assertIn(expected, output, expected)
 
+    def test_quiet_mode(self):
+        p = spawn_repl("-q", "-m", "asyncio", custom=True)
+        output = kill_python(p)
+        self.assertEqual(p.returncode, 0)
+        self.assertEqual(output[:3], ">>>")
+
 
 if __name__ == "__main__":
     unittest.main()
diff --git a/Misc/NEWS.d/next/Library/2025-12-21-17-44-28.gh-issue-143046.GBa5Ip.rst b/Misc/NEWS.d/next/Library/2025-12-21-17-44-28.gh-issue-143046.GBa5Ip.rst
new file mode 100644 (file)
index 0000000..ac819a4
--- /dev/null
@@ -0,0 +1,2 @@
+The :mod:`asyncio` REPL no longer prints copyright and version messages in
+the quiet mode (:option:`-q`). Patch by Bartosz SÅ‚awecki.