Blob Blame Raw
Sphinx with autodoc is sensitive to whether it is run via Python2 or Python3
as it uses the Python version that it is invoked with to parse the source
files for docstrings.  Unfortunately, there's no logic to detect this within
the sphinx commands and the standard Makefiles generated by sphinx-quickstart
don't give the user any hint that it might be a problem.

The Fedora package tries to mitigate this problem by allowing the user to
switch between the Python2 and Python3 versions using environment-modules.  To
switch to the Python3 commands, use::

    module swap python-sphinx/python3-sphinx

To switch to the Python2 version, use::

    module swap python-sphinx/python2-sphinx

The default install uses the python2 version of the modules.
If the system administrator wishes to change the default, edit the
/etc/profile.d/zz-modules-python-sphinx.sh and
/etc/profile.d/zz-modules-python-sphinx.csh files to specify a specific
alternative to use.  For instance, to make the python3 version the default,
modify it like so::

    @@ -1,2 +1,2 @@
     # Add path to the default python-sphinx scripts on this version of Fedora
    -module load python-sphinx
    +module load python-sphinx/python3-sphinx