summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorINADA Naoki <songofacandy@gmail.com>2016-11-21 11:58:10 (GMT)
committerINADA Naoki <songofacandy@gmail.com>2016-11-21 11:58:10 (GMT)
commit7fc69f23735330e98dffaa29c68f61856c0c8b27 (patch)
treedd32c8074939e2ff58e50086a5b12289f89c25bb
parentd4510a8b689169c5a22346a04b58bdb7ef050f88 (diff)
parent0e175a6e762676fca6bfd656912bb862e29fbdd5 (diff)
downloadcpython-7fc69f23735330e98dffaa29c68f61856c0c8b27.zip
cpython-7fc69f23735330e98dffaa29c68f61856c0c8b27.tar.gz
cpython-7fc69f23735330e98dffaa29c68f61856c0c8b27.tar.bz2
Issue #28532: Show sys.version when -V option is supplied twice
-rw-r--r--Doc/using/cmdline.rst7
-rw-r--r--Lib/test/test_cmd_line.py2
-rw-r--r--Misc/NEWS2
-rw-r--r--Misc/python.man3
-rw-r--r--Modules/main.c3
5 files changed, 13 insertions, 4 deletions
diff --git a/Doc/using/cmdline.rst b/Doc/using/cmdline.rst
index 81b0823..7ebdb95 100644
--- a/Doc/using/cmdline.rst
+++ b/Doc/using/cmdline.rst
@@ -180,7 +180,12 @@ Generic options
Print the Python version number and exit. Example output could be::
- Python 3.0
+ Python 3.6.0b2+
+
+ When given twice, print more information about the build, like::
+
+ Python 3.6.0b2+ (3.6:84a3c5003510+, Oct 26 2016, 02:33:55)
+ [GCC 6.2.0 20161005]
.. _using-on-misc-options:
diff --git a/Lib/test/test_cmd_line.py b/Lib/test/test_cmd_line.py
index 87571d3..b71bb9f 100644
--- a/Lib/test/test_cmd_line.py
+++ b/Lib/test/test_cmd_line.py
@@ -43,7 +43,7 @@ class CmdLineTest(unittest.TestCase):
def test_version(self):
version = ('Python %d.%d' % sys.version_info[:2]).encode("ascii")
- for switch in '-V', '--version':
+ for switch in '-V', '--version', '-VV':
rc, out, err = assert_python_ok(switch)
self.assertFalse(err.startswith(version))
self.assertTrue(out.startswith(version))
diff --git a/Misc/NEWS b/Misc/NEWS
index 5bf35ef..e5752e4 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -10,6 +10,8 @@ What's New in Python 3.7.0 alpha 1
Core and Builtins
-----------------
+- Issue #28532: Show sys.version when -V option is supplied twice.
+
- Issue #28746: Fix the set_inheritable() file descriptor method on platforms
that do not have the ioctl FIOCLEX and FIONCLEX commands.
diff --git a/Misc/python.man b/Misc/python.man
index 28f19b6..385b654 100644
--- a/Misc/python.man
+++ b/Misc/python.man
@@ -194,7 +194,8 @@ searching for a module. Also provides information on module cleanup
at exit.
.TP
.B \-V ", " \-\-version
-Prints the Python version number of the executable and exits.
+Prints the Python version number of the executable and exits. When given
+twice, print more information about the build.
.TP
.BI "\-W " argument
Warning control. Python sometimes prints warning message to
diff --git a/Modules/main.c b/Modules/main.c
index 6986d94..d75f64a 100644
--- a/Modules/main.c
+++ b/Modules/main.c
@@ -74,6 +74,7 @@ static const char usage_3[] = "\
-v : verbose (trace import statements); also PYTHONVERBOSE=x\n\
can be supplied multiple times to increase verbosity\n\
-V : print the Python version number and exit (also --version)\n\
+ when given twice, print more information about the build\n\
-W arg : warning control; arg is action:message:category:module:lineno\n\
also PYTHONWARNINGS=arg\n\
-x : skip first line of source, allowing use of non-Unix forms of #!cmd\n\
@@ -512,7 +513,7 @@ Py_Main(int argc, wchar_t **argv)
return usage(0, argv[0]);
if (version) {
- printf("Python %s\n", PY_VERSION);
+ printf("Python %s\n", version >= 2 ? Py_GetVersion() : PY_VERSION);
return 0;
}