From: Victor Stinner <vstinner@redhat.com>
Date: Fri, 1 Jun 2018 09:04:29 +0000 (+0200)
Subject: bpo-33692: pythoninfo detect libedit on Python 3.6 (GH-7293)
X-Git-Tag: v3.8.0a1~1700
X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ef634b5b26f14d942768069fa23f9791a06ff37e;p=python

bpo-33692: pythoninfo detect libedit on Python 3.6 (GH-7293)

Check which readline implementation is used based on the readline
docstring.
---

diff --git a/Lib/test/pythoninfo.py b/Lib/test/pythoninfo.py
index 776f03f8b5..9242a36bed 100644
--- a/Lib/test/pythoninfo.py
+++ b/Lib/test/pythoninfo.py
@@ -275,6 +275,14 @@ def collect_readline(info_add):
     copy_attributes(info_add, readline, 'readline.%s', attributes,
                     formatter=format_attr)
 
+    if not hasattr(readline, "_READLINE_LIBRARY_VERSION"):
+        # _READLINE_LIBRARY_VERSION has been added to CPython 3.7
+        doc = getattr(readline, '__doc__', '')
+        if 'libedit readline' in doc:
+            info_add('readline.library', 'libedit readline')
+        elif 'GNU readline' in doc:
+            info_add('readline.library', 'GNU readline')
+
 
 def collect_gdb(info_add):
     import subprocess