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.

classification
Title: Document "optional components that are commonly included in Python distributions."
Type: Stage: resolved
Components: Documentation Versions:
process
Status: closed Resolution: wont fix
Dependencies: Superseder:
Assigned To: docs@python Nosy List: docs@python, r.david.murray
Priority: normal Keywords:

Created on 2018-05-19 22:00 by Antony.Lee, last changed 2022-04-11 14:59 by admin. This issue is now closed.

Messages (2)
msg317140 - (view) Author: Antony Lee (Antony.Lee) * Date: 2018-05-19 22:00
The stdlib docs intro include the following sentences:

    It also describes some of the optional components that are commonly included in Python distributions.

    For Unix-like operating systems Python is normally provided as a collection of packages, so it may be necessary to use the packaging tools provided with the operating system to obtain some or all of the optional components.

However, as far as I can tell, there is no easy way to actually know what parts of the stdlib are "optional".  The _thread module's doc does state "The module is optional.", and the threading module's doc also implies that it is optional ("The dummy_threading module is provided for situations where threading cannot be used because _thread is missing.") (yes, I know support for threadless builds is going away in 3.7; that's irrelevant here.), but even ensurepip's docs don't state that it may be missing (even though I believe(?) that it is indeed removed (and intended to be so) from some linux distribution's Pythons).

A master list of "optional" features would thus be welcome.  Its usefulness is to know what parts of the stdlib we can actually rely on; e.g. in https://github.com/matplotlib/matplotlib/issues/10866 a Matplotlib user noted that bz2 is not present in all Python installs.
msg317233 - (view) Author: R. David Murray (r.david.murray) * (Python committer) Date: 2018-05-21 14:05
As I understand it, we don't control or know what that list is, it depends on each distribution's policies.
History
Date User Action Args
2022-04-11 14:59:00adminsetgithub: 77762
2021-11-27 19:07:44Antony.Leesetnosy: - Antony.Lee
2021-11-27 18:28:42iritkatrielsetstatus: open -> closed
resolution: wont fix
stage: resolved
2018-05-21 14:05:19r.david.murraysetnosy: + r.david.murray
messages: + msg317233
2018-05-19 22:00:07Antony.Leecreate