-
-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Closed
Labels
bugIssue reports a bugIssue reports a bugresolvedIssue is resolved, yet unreleased if openIssue is resolved, yet unreleased if open
Description
Context
I host my mkdocs site on Netlify, which currently uses Python 3.8
Bug description
When enabling the blog plugin on Python 3.8, mkdocs build
fails with TypeError: 'ABCMeta' object is not subscriptable
.
Full output below:
Traceback (most recent call last):
File "/Users/davidy/.pyenv/versions/mkdocs-blog/bin/mkdocs", line 8, in <module>
sys.exit(cli())
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/click/core.py", line 1157, in __call__
return self.main(*args, **kwargs)
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/click/core.py", line 1078, in main
rv = self.invoke(ctx)
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/click/core.py", line 1688, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/click/core.py", line 1434, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/click/core.py", line 783, in invoke
return __callback(*args, **kwargs)
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/mkdocs/__main__.py", line 283, in build_command
cfg = config.load_config(**kwargs)
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/mkdocs/config/base.py", line 378, in load_config
errors, warnings = cfg.validate()
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/mkdocs/config/base.py", line 230, in validate
run_failed, run_warnings = self._validate()
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/mkdocs/config/base.py", line 188, in _validate
self[key] = config_option.validate(value)
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/mkdocs/config/config_options.py", line 182, in validate
return self.run_validation(value)
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/mkdocs/config/config_options.py", line 1064, in run_validation
self.load_plugin_with_namespace(name, cfg)
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/mkdocs/config/config_options.py", line 1100, in load_plugin_with_namespace
return (name, self.load_plugin(name, config))
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/mkdocs/config/config_options.py", line 1118, in load_plugin
plugin_cls = self.installed_plugins[name].load()
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/importlib_metadata/__init__.py", line 209, in load
module = import_module(match.group('module'))
File "/Users/davidy/.pyenv/versions/3.8.18/lib/python3.8/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
File "<frozen importlib._bootstrap>", line 991, in _find_and_load
File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 843, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/material/plugins/blog/plugin.py", line 44, in <module>
from .structure import Archive, Category, Excerpt, Post, View
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/material/plugins/blog/structure/__init__.py", line 40, in <module>
from .config import PostConfig
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/material/plugins/blog/structure/config.py", line 24, in <module>
from .options import PostDate
File "/Users/davidy/.pyenv/versions/3.8.18/envs/mkdocs-blog/lib/python3.8/site-packages/material/plugins/blog/structure/options.py", line 30, in <module>
class DateDict(UserDict[str, datetime]):
TypeError: 'ABCMeta' object is not subscriptable
Related links
Reproduction
Steps to reproduce
- Create a fresh python 3.8 env using
pyenv install 3.8
- Install mkdocs with
pip install mkdocs-material
- Create the absolute minimal site with only the blog plugin enabled (see reproduction)
- Uncomment the
blog
section underplugins:
(the info plugin wouldn't work while it was enabled, since mkdocs would error) - Run
mkdocs build
and observe the error
Browser
No response
Before submitting
- I have read and followed the bug reporting guidelines.
- I have attached links to the documentation, and possibly related issues and discussions.
- I assure that I have removed all customizations before submitting this bug report.
- I have attached a .zip file with a minimal reproduction.
Metadata
Metadata
Assignees
Labels
bugIssue reports a bugIssue reports a bugresolvedIssue is resolved, yet unreleased if openIssue is resolved, yet unreleased if open