sphinx.ext.autodoc: Keeping names of constants in signature
Since version 4.0 of Sphinx there is a new configuration option (autodoc_preserve_defaults
). Setting
autodoc_preserve_defaults = True
in your conf.py
will preserve the default values as they are in the source code.
You probably have to override the signature by hand in the reST file.
It's hard to come up with a better answer. Autodoc imports the modules it documents, so all module-level code (including default function arguments) is executed.
See also these similar questions: here and here.
Update:
I just realized that there is another option. You can override the signature by including it as the very first line of the docstring. See the documentation of the autodoc_docstring_signature configuration variable, and this answer.