Skip to content
Snippets Groups Projects
Commit 398df15d authored by Amir MOHAMMADI's avatar Amir MOHAMMADI
Browse files

[sphinx cli] Add more autodoc flags variants

parent 65c14c46
No related branches found
No related tags found
1 merge request!188Add a sphinx command to help with migrating to sphinx 3
Pipeline #45290 passed
...@@ -8,30 +8,87 @@ def sphinx(): ...@@ -8,30 +8,87 @@ def sphinx():
@sphinx.command() @sphinx.command()
@click.argument( @click.argument(
"sphix_configuration", "sphix_configurations",
default="doc/conf.py",
type=click.Path(exists=True, dir_okay=False), type=click.Path(exists=True, dir_okay=False),
required=False, required=False,
nargs=-1,
) )
def migrate_autodoc_flags(sphix_configuration): def migrate_autodoc_flags(sphix_configurations):
with open(sphix_configuration) as f: if not sphix_configurations:
config = f.read() sphix_configurations = ["doc/conf.py"]
for sphinx_config in sphix_configurations:
with open(sphinx_config) as f:
config = f.read()
config = config.replace( config = config.replace(
"""autodoc_default_flags = [ """autodoc_default_flags = [
'members', 'members',
'undoc-members', 'undoc-members',
'show-inheritance', 'show-inheritance',
]""", ]""",
"""autodoc_default_options = { """autodoc_default_options = {
"members": True, "members": True,
"undoc-members": True, "undoc-members": True,
"show-inheritance": True, "show-inheritance": True,
}""", }""",
) )
config = config.replace( # another variant
"""# We want to remove all private (i.e. _. or __.__) members config = config.replace(
"""autodoc_default_flags = [
"members",
"undoc-members",
"show-inheritance",
]""",
"""autodoc_default_options = {
"members": True,
"undoc-members": True,
"show-inheritance": True,
}""",
)
# another variant
config = config.replace(
"""autodoc_default_flags = [
'members',
'undoc-members',
'show-inheritance',
]""",
"""autodoc_default_options = {
"members": True,
"undoc-members": True,
"show-inheritance": True,
}""",
)
# another variant
config = config.replace(
"""autodoc_default_flags = [
'members',
'undoc-members',
'inherited-members',
'show-inheritance',
]""",
"""autodoc_default_options = {
"members": True,
"undoc-members": True,
"inherited-members": True,
"show-inheritance": True,
}""",
)
# another variant
config = config.replace(
"""autodoc_default_flags = ["members", "undoc-members", "show-inheritance"]""",
"""autodoc_default_options = {
"members": True,
"undoc-members": True,
"show-inheritance": True,
}""",
)
config = config.replace(
"""# We want to remove all private (i.e. _. or __.__) members
# that are not in the list of accepted functions # that are not in the list of accepted functions
accepted_private_functions = ['__array__'] accepted_private_functions = ['__array__']
...@@ -51,8 +108,91 @@ def member_function_test(app, what, name, obj, skip, options): ...@@ -51,8 +108,91 @@ def member_function_test(app, what, name, obj, skip, options):
def setup(app): def setup(app):
app.connect('autodoc-skip-member', member_function_test) app.connect('autodoc-skip-member', member_function_test)
""", """,
"", "",
) )
# another variant
config = config.replace(
"""# We want to remove all private (i.e. _. or __.__) members
# that are not in the list of accepted functions
accepted_private_functions = ['__array__']
def member_function_test(app, what, name, obj, skip, options):
# test if we have a private function
if len(name) > 1 and name[0] == '_':
# test if this private function should be allowed
if name not in accepted_private_functions:
# omit privat functions that are not in the list of accepted private functions
return skip
else:
# test if the method is documented
if not hasattr(obj, '__doc__') or not obj.__doc__:
return skip
return False
def setup(app):
app.connect('autodoc-skip-member', member_function_test)
""",
"",
)
# another variant
config = config.replace(
"""# We want to remove all private (i.e. _. or __.__) members
# that are not in the list of accepted functions
accepted_private_functions = ["__array__"]
def member_function_test(app, what, name, obj, skip, options):
# test if we have a private function
if len(name) > 1 and name[0] == "_":
# test if this private function should be allowed
if name not in accepted_private_functions:
# omit privat functions that are not in the list of accepted private functions
return skip
else:
# test if the method is documented
if not hasattr(obj, "__doc__") or not obj.__doc__:
return skip
return False
def setup(app):
app.connect("autodoc-skip-member", member_function_test)
""",
"",
)
# another variant
config = config.replace(
"""
# We want to remove all private (i.e. _. or __.__) members
# that are not in the list of accepted functions
accepted_private_functions = ["__array__"]
def member_function_test(app, what, name, obj, skip, options):
# test if we have a private function
if len(name) > 1 and name[0] == "_":
# test if this private function should be allowed
if name not in accepted_private_functions:
# omit private functions that are not in the list of accepted private
# functions
return skip
else:
# test if the method is documented
if not hasattr(obj, "__doc__") or not obj.__doc__:
return skip
return False
def setup(app):
app.connect("autodoc-skip-member", member_function_test)
""",
"",
)
with open(sphix_configuration, "w") as f: with open(sphinx_config, "w") as f:
f.write(config) f.write(config)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment