mkapi
mkapi copied to clipboard
python 3.9 - AttributeError: 'Name' object has no attribute 'value'
Command : mkdocs build -f docs/mkdocs.yml -v
When i run the command with python 3.8, it works. When i run the command with python 3.9, it fails :
DEBUG - Config value: 'plugins' = PluginCollection([('search', <mkdocs.contrib.search.SearchPlugin object at 0x7f9f49027970>), ('mkapi', <mkapi.plugins.mkdocs.MkapiPlugin object at 0x7f9f48fbd880>)])
Traceback (most recent call last):
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/bin/mkdocs", line 8, in <module>
sys.exit(cli())
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/click/core.py", line 829, in __call__
return self.main(*args, **kwargs)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/click/core.py", line 782, in main
rv = self.invoke(ctx)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/click/core.py", line 1259, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/click/core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/click/core.py", line 610, in invoke
return callback(*args, **kwargs)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkdocs/__main__.py", line 152, in build_command
build.build(config.load_config(**kwargs), dirty=not clean)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkdocs/commands/build.py", line 236, in build
config = config['plugins'].run_event('config', config)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkdocs/plugins.py", line 94, in run_event
result = method(item, **kwargs)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/plugins/mkdocs.py", line 50, in on_config
config, self.abs_api_paths = mkapi.plugins.api.create_nav(
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/plugins/api.py", line 23, in create_nav
page[key], abs_api_paths_ = collect(
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/plugins/api.py", line 47, in collect
module = get_module(package_path)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/module.py", line 104, in get_module
module = Module(obj)
File "<string>", line 4, in __init__
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/module.py", line 27, in __post_init__
super().__post_init__()
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/structure.py", line 106, in __post_init__
self.members = self.get_members()
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/module.py", line 48, in get_members
return get_members(self.obj)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/module.py", line 81, in get_members
module = get_module(name)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/module.py", line 104, in get_module
module = Module(obj)
File "<string>", line 4, in __init__
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/module.py", line 28, in __post_init__
self.node = get_node(self.obj)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/node.py", line 229, in get_node
return Node(obj, sourcefile_index)
File "<string>", line 5, in __init__
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/node.py", line 31, in __post_init__
super().__post_init__()
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/structure.py", line 106, in __post_init__
self.members = self.get_members()
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/node.py", line 82, in get_members
return get_members(self.obj)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/node.py", line 209, in get_members
member = get_node(obj, sourcefile_index)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/node.py", line 229, in get_node
return Node(obj, sourcefile_index)
File "<string>", line 5, in __init__
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/node.py", line 31, in __post_init__
super().__post_init__()
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/structure.py", line 100, in __post_init__
signature = get_signature(obj)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/signature.py", line 356, in get_signature
return Signature(obj)
File "<string>", line 7, in __init__
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/signature.py", line 71, in __post_init__
self.set_attributes()
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/signature.py", line 118, in set_attributes
for name, (type, description) in get_attributes(self.obj).items():
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/attribute.py", line 269, in get_attributes
return get_class_attributes(obj)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/attribute.py", line 185, in get_class_attributes
attr_lineno = get_attributes_with_lineno(nodes, module)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/attribute.py", line 121, in get_attributes_with_lineno
attr, lineno, type_str = parse_annotation_assign(x)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/attribute.py", line 61, in parse_annotation_assign
type = parse_node(assign.annotation)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/attribute.py", line 47, in parse_node
return parse_subscript(x)
File "/root/.cache/pypoetry/virtualenvs/ifr-lib-OYUa1U17-py3.9/lib/python3.9/site-packages/mkapi/core/attribute.py", line 23, in parse_subscript
slice = parse_node(x.slice.value)
AttributeError: 'Name' object has no attribute 'value'
Have you any idea ?
This could be similar to https://github.com/wemake-services/wemake-python-styleguide/issues/1652. There were some changes to ast.Subscript that could be causing this https://bugs.python.org/issue40430