This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Title: Setup & Usage documentation for selected stdlib modules
Type: enhancement Stage: needs patch
Components: Documentation Versions: Python 3.5
Status: open Resolution:
Dependencies: Superseder:
Assigned To: docs@python Nosy List: docs@python, eric.araujo, ezio.melotti, ncoghlan, tshepang
Priority: normal Keywords:

Created on 2012-05-29 01:50 by ncoghlan, last changed 2022-04-11 14:57 by admin.

Messages (7)
msg161832 - (view) Author: Nick Coghlan (ncoghlan) * (Python committer) Date: 2012-05-29 01:50
Some stdlib modules have officially documented and supported behaviour when executed via -m. These should be referenced from the Setup & Usage documentation at

Current candidates:
python -m unittest
python -m timeit
msg161833 - (view) Author: Nick Coghlan (ncoghlan) * (Python committer) Date: 2012-05-29 02:03
I'm sure there's a predecessor to this issue that I intend for this one to replace, but I can't currently find it in order to mark it as superceded.
msg161835 - (view) Author: Nick Coghlan (ncoghlan) * (Python committer) Date: 2012-05-29 02:13
Found it: #11260. I've left it open, since the original suggestion in that issue is related to actually documenting the -m behaviour of the smptd module - it was just the issue *discussion* that ended up covering the more general question of how such command line interfaces should be documented.

The current issue is specifically about providing a central index in the setup and usage documentation to those modules which *already* have officially documented and supported behaviour when executed with -m.
msg161839 - (view) Author: Nick Coghlan (ncoghlan) * (Python committer) Date: 2012-05-29 02:30
Additional candidates after grepping the docs:

python -m site
python -m sysconfig
python -m pickle
python -m pickletools
python -m compileall
python -m test
msg161842 - (view) Author: Éric Araujo (eric.araujo) * (Python committer) Date: 2012-05-29 03:16
I’d propose to add one file per script / module-as-script, except maybe for -m site and -m sysconfig which are more about debugging an installation than really using a feature provided by the stdlib.
msg161846 - (view) Author: Nick Coghlan (ncoghlan) * (Python committer) Date: 2012-05-29 03:33
I think for these it's reasonable to just have an index page that references out to the individual module docs. Most of them are closely related to using the module in your own code and/or there's general background info in the module docs that you're likely to need in order to understand what the tool is for.

The main thing I'm after at this point is for Setup & Usage to act as a central index for using Python from the command line, rather than it necessarily containing all the details directly. Rather than trying too hard to categorise them, I'd be inclined to start with a simple alphabetical list (module name linking to the relevant section in the module docs, adding it if it doesn't already exist). Something like:

compileall - Precompiling Python source modules to bytecode
pickle - Display the contents of pickles saved as files
pickletools - Analyse the contents of pickles saved as files
site - Display details of Python's configuration
sysconfig - Display additional details of Python's configuration
test - Execute Python's own regression test suite
timeit - Microbenchmarking for small Python snippets
unittest - Find and execute unit tests

Maybe we'll decide to do something more long term, but I think this is a good way to start.
msg223269 - (view) Author: Mark Lawrence (BreamoreBoy) * Date: 2014-07-16 20:39
Where do we stand with this and #11260 ?
Date User Action Args
2022-04-11 14:57:30adminsetgithub: 59150
2019-04-26 17:26:25BreamoreBoysetnosy: - BreamoreBoy
2014-12-31 16:21:55akuchlingsetnosy: - akuchling
2014-07-16 20:39:39BreamoreBoysetnosy: + BreamoreBoy

messages: + msg223269
versions: + Python 3.5, - Python 2.7, Python 3.2, Python 3.3, Python 3.4
2013-03-23 20:35:00ezio.melottisetnosy: + ezio.melotti

versions: + Python 3.4
2012-05-31 08:55:36akuchlingsetnosy: + akuchling
2012-05-29 04:01:53tshepangsetnosy: + tshepang
2012-05-29 03:33:49ncoghlansetmessages: + msg161846
2012-05-29 03:16:23eric.araujosetnosy: + eric.araujo
messages: + msg161842
2012-05-29 02:30:26ncoghlansetmessages: + msg161839
2012-05-29 02:13:07ncoghlansetmessages: + msg161835
2012-05-29 02:03:53ncoghlansetmessages: + msg161833
2012-05-29 01:50:58ncoghlancreate