Refactor import hierarchy and API documentation
- simplify, homogenize and make more explicit the definition of what is "public" API and what are internal implementations. For this we now declare the
__all__
variable for (and only for) the public API modules. We also remove all usages ofimport *
in the public API. - refactor the api autodocumentation tool to make use of the explicit public API definition (fixes #1011 (closed))
- refactor the imports of
taurus
to avoid importingtaurus.core
ortaurus.customsettings
when importing taurus (fixes #1217 (closed)) - improve documentation templates:
- document all public members of modules (not only classes and functions), but also variables and exceptions
- add hint for suggested import style in classes
- add small summary definition for classes in the modules (and a link to expand the info)
This MR is also relevant to simplify the resolution of #1067 (closed) and also of #1181 (closed)
Note that the new documentation is built and can be reviewed by clicking the ~View App` button.
Edited by Carlos Pascual