bpo-17232: Clarify docs for -O and -OO command line options (#5839)

The 'optimization' is for space in the executable file, not for run time.
This commit is contained in:
Cheryl Sabella 2018-02-24 22:04:40 -05:00 committed by Terry Jan Reedy
parent 6cdb7954b0
commit 186b606d8a
4 changed files with 23 additions and 6 deletions

View File

@ -260,12 +260,23 @@ Miscellaneous options
.. cmdoption:: -O
Turn on basic optimizations. See also :envvar:`PYTHONOPTIMIZE`.
Remove assert statements and any code conditional on the value of
:const:`__debug__`. Augment the filename for compiled
(:term:`bytecode`) files by adding ``.opt-1`` before the ``.pyc``
extension (see :pep:`488`). See also :envvar:`PYTHONOPTIMIZE`.
.. versionchanged:: 3.5
Modify ``.pyc`` filenames according to :pep:`488`.
.. cmdoption:: -OO
Discard docstrings in addition to the :option:`-O` optimizations.
Do :option:`-O` and also discard docstrings. Augment the filename
for compiled (:term:`bytecode`) files by adding ``.opt-2`` before the
``.pyc`` extension (see :pep:`488`).
.. versionchanged:: 3.5
Modify ``.pyc`` filenames according to :pep:`488`.
.. cmdoption:: -q

View File

@ -0,0 +1 @@
Clarify docs for -O and -OO. Patch by Terry Reedy.

View File

@ -164,10 +164,13 @@ for the named module and runs the corresponding
file as a script.
.TP
.B \-O
Turn on basic optimizations. Given twice, causes docstrings to be discarded.
Remove assert statements and any code conditional on the value of
__debug__; augment the filename for compiled (bytecode) files by
adding .opt-1 before the .pyc extension.
.TP
.B \-OO
Discard docstrings in addition to the \fB-O\fP optimizations.
Do \fB-O\fP and also discard docstrings; change the filename for
compiled (bytecode) files by adding .opt-2 before the .pyc extension.
.TP
.B \-q
Do not print the version and copyright messages. These messages are

View File

@ -96,8 +96,10 @@ static const char usage_2[] = "\
if stdin does not appear to be a terminal; also PYTHONINSPECT=x\n\
-I : isolate Python from the user's environment (implies -E and -s)\n\
-m mod : run library module as a script (terminates option list)\n\
-O : optimize generated bytecode slightly; also PYTHONOPTIMIZE=x\n\
-OO : remove doc-strings in addition to the -O optimizations\n\
-O : remove assert and __debug__-dependent statements; add .opt-1 before\n\
.pyc extension; also PYTHONOPTIMIZE=x\n\
-OO : do -O changes and also discard docstrings; add .opt-2 before\n\
.pyc extension\n\
-q : don't print version and copyright messages on interactive startup\n\
-s : don't add user site directory to sys.path; also PYTHONNOUSERSITE\n\
-S : don't imply 'import site' on initialization\n\