git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v2 13/14] git-p4: use python3's input() everywhere

From
Yang Zhao <yang.zhao@skyboxlabs.com>
Date
Dec 13, 2019, 23:52 UTC
Message-ID
<20191213235247.23660-15-yang.zhao@skyboxlabs.com>
In-Reply-To
<20191213235247.23660-1-yang.zhao@skyboxlabs.com>

Python3 deprecates raw_input() from 2.7 and replaced it with input(). Since we do not need 2.7's input() semantics, `raw_input()` is aliased to `input()` for easy forward compatability.

Signed-off-by: Yang Zhao <yang.zhao@skyboxlabs.com>
---
 git-p4.py | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/git-p4.py b/git-p4.py
index 3af8df9f83..17f72f4309 100755
--- a/git-p4.py
+++ b/git-p4.py
@@ -27,6 +27,16 @@
 import ctypes
 import errno
 
+# On python2.7 where raw_input() and input() are both availble,
+# we want raw_input's semantics, but aliased to input for python3
+# compatibility
+# support basestring in python3
+try:
+    if raw_input and input:
+        input = raw_input
+except:
+    pass
+
 verbose = False
 
 # Only labels/tags matching this will be imported/exported
@@ -1801,7 +1811,7 @@ def edit_template(self, template_file):
             return True
 
         while True:
-            response = raw_input("Submit template unchanged. Submit anyway? [y]es, [n]o (skip this patch) ")
+            response = input("Submit template unchanged. Submit anyway? [y]es, [n]o (skip this patch) ")
             if response == 'y':
                 return True
             if response == 'n':
@@ -2372,7 +2382,7 @@ def run(self, args):
                         # prompt for what to do, or use the option/variable
                         if self.conflict_behavior == "ask":
                             print("What do you want to do?")
-                            response = raw_input("[s]kip this commit but apply"
+                            response = input("[s]kip this commit but apply"
                                                  " the rest, or [q]uit? ")
                             if not response:
                                 continue
-- 
2.21.0.windows.1
Previous: Yang Zhao
Message 22 of 22 in “git-p4: python3 compatibility”
  1. 00/14 git-p4: python3 compatibilityYang Zhao, Dec 13, 2019
  2. Yang ZhaoJan 17, 2020
  3. Luke DiamandJan 24, 2020
  4. Luke DiamandJan 30, 2020
  5. Luke DiamandFeb 3, 2020
  6. Yang ZhaoFeb 3, 2020
  7. Yang ZhaoFeb 4, 2020
  8. 01/14 git-p4: make python2.7 the oldest supported versionYang Zhao, Dec 13, 2019
  9. 02/14 git-p4: change the expansion test from basestring to listYang Zhao, Dec 13, 2019
  10. 05/14 git-p4: encode/decode communication with git for python3Yang Zhao, Dec 13, 2019
  11. 03/14 git-p4: remove string type aliasingYang Zhao, Dec 13, 2019
  12. 04/14 git-p4: encode/decode communication with p4 for python3Yang Zhao, Dec 13, 2019
  13. Junio C HamanoDec 17, 2019
  14. 08/14 git-p4: use marshal format version 2 when sending to p4Yang Zhao, Dec 13, 2019
  15. 07/14 git-p4: open .gitp4-usercache.txt in text modeYang Zhao, Dec 13, 2019
  16. 06/14 git-p4: convert path to unicode before processing themYang Zhao, Dec 13, 2019
  17. 09/14 git-p4: fix freezing while waiting for fast-import progressYang Zhao, Dec 13, 2019
  18. 10/14 git-p4: use functools.reduce instead of reduceYang Zhao, Dec 13, 2019
  19. 12/14 git-p4: simplify regex pattern generation for parsing diff-treeYang Zhao, Dec 13, 2019
  20. 11/14 git-p4: use dict.items() iteration for python3 compatibilityYang Zhao, Dec 13, 2019
  21. 14/14 ci: also run linux-gcc pipeline with python3.5 environmentYang Zhao, Dec 13, 2019
  22. 13/14 git-p4: use python3's input() everywhereYang Zhao, Dec 13, 2019

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.