diff options
author | Takeshi KOMIYA <i.tkomiya@gmail.com> | 2022-06-17 02:19:33 +0900 |
---|---|---|
committer | Takeshi KOMIYA <i.tkomiya@gmail.com> | 2022-06-17 02:19:33 +0900 |
commit | 4d7558e968d74f73e11c5460fe095b51a5a9f172 (patch) | |
tree | 2f67856b0b2022caec491c37766280b77c48ed2f /sphinx | |
parent | 571b55328d401a6e1d50e37407df56586065a7be (diff) | |
parent | 949984c4e26671fdf5490c33cf90d4db118aaa86 (diff) | |
download | sphinx-git-4d7558e968d74f73e11c5460fe095b51a5a9f172.tar.gz |
Merge branch '5.0.x' into 5.x
Diffstat (limited to 'sphinx')
-rw-r--r-- | sphinx/builders/html/__init__.py | 1 | ||||
-rw-r--r-- | sphinx/domains/python.py | 2 | ||||
-rw-r--r-- | sphinx/ext/autodoc/__init__.py | 3 | ||||
-rw-r--r-- | sphinx/ext/autodoc/importer.py | 9 | ||||
-rw-r--r-- | sphinx/themes/basic/static/basic.css_t | 24 | ||||
-rw-r--r-- | sphinx/themes/bizstyle/static/bizstyle.css_t | 6 | ||||
-rw-r--r-- | sphinx/themes/classic/static/classic.css_t | 6 | ||||
-rw-r--r-- | sphinx/themes/epub/static/epub.css_t | 6 | ||||
-rw-r--r-- | sphinx/themes/nature/static/nature.css_t | 6 | ||||
-rw-r--r-- | sphinx/themes/nonav/static/nonav.css_t (renamed from sphinx/themes/nonav/static/nonav.css) | 6 | ||||
-rw-r--r-- | sphinx/themes/pyramid/static/epub.css_t (renamed from sphinx/themes/pyramid/static/epub.css) | 6 | ||||
-rw-r--r-- | sphinx/themes/pyramid/static/pyramid.css_t | 6 | ||||
-rw-r--r-- | sphinx/themes/sphinxdoc/static/sphinxdoc.css_t | 6 | ||||
-rw-r--r-- | sphinx/themes/traditional/static/traditional.css_t | 6 |
14 files changed, 76 insertions, 17 deletions
diff --git a/sphinx/builders/html/__init__.py b/sphinx/builders/html/__init__.py index 6ba92eb3e..9404ae458 100644 --- a/sphinx/builders/html/__init__.py +++ b/sphinx/builders/html/__init__.py @@ -536,6 +536,7 @@ class StandaloneHTMLBuilder(Builder): 'css_files': self.css_files, 'sphinx_version': __display_version__, 'sphinx_version_tuple': sphinx_version, + 'docutils_version_info': docutils.__version_info__[:5], 'style': self._get_style_filename(), 'rellinks': rellinks, 'builder': self.name, diff --git a/sphinx/domains/python.py b/sphinx/domains/python.py index a634a51d2..fd43b15b2 100644 --- a/sphinx/domains/python.py +++ b/sphinx/domains/python.py @@ -396,7 +396,7 @@ class PyXrefMixin: results.append(self.make_xref(rolename, domain, sub_target, innernode, contnode, env, inliner, location)) - if sub_target in ('Literal', 'typing.Literal'): + if sub_target in ('Literal', 'typing.Literal', '~typing.Literal'): in_literal = True return results diff --git a/sphinx/ext/autodoc/__init__.py b/sphinx/ext/autodoc/__init__.py index e16ab8ce5..642e0cfd8 100644 --- a/sphinx/ext/autodoc/__init__.py +++ b/sphinx/ext/autodoc/__init__.py @@ -1670,7 +1670,8 @@ class ClassDocumenter(DocstringSignatureMixin, ModuleLevelDocumenter): # type: self.add_line(' ' + _('Bases: %s') % ', '.join(base_classes), sourcename) def get_object_members(self, want_all: bool) -> Tuple[bool, ObjectMembers]: - members = get_class_members(self.object, self.objpath, self.get_attr) + members = get_class_members(self.object, self.objpath, self.get_attr, + self.config.autodoc_inherit_docstrings) if not want_all: if not self.options.members: return False, [] # type: ignore diff --git a/sphinx/ext/autodoc/importer.py b/sphinx/ext/autodoc/importer.py index 85c1e81be..d392ae75d 100644 --- a/sphinx/ext/autodoc/importer.py +++ b/sphinx/ext/autodoc/importer.py @@ -205,8 +205,8 @@ def get_object_members(subject: Any, objpath: List[str], attrgetter: Callable, return members -def get_class_members(subject: Any, objpath: List[str], attrgetter: Callable - ) -> Dict[str, "ObjectMember"]: +def get_class_members(subject: Any, objpath: List[str], attrgetter: Callable, + inherit_docstrings: bool = True) -> Dict[str, "ObjectMember"]: """Get members and attributes of target class.""" from sphinx.ext.autodoc import INSTANCEATTR, ObjectMember @@ -290,6 +290,11 @@ def get_class_members(subject: Any, objpath: List[str], attrgetter: Callable elif (ns == qualname and docstring and isinstance(members[name], ObjectMember) and not members[name].docstring): + if cls != subject and not inherit_docstrings: + # If we are in the MRO of the class and not the class itself, + # and we do not want to inherit docstrings, then skip setting + # the docstring below + continue # attribute is already known, because dir(subject) enumerates it. # But it has no docstring yet members[name].docstring = '\n'.join(docstring) diff --git a/sphinx/themes/basic/static/basic.css_t b/sphinx/themes/basic/static/basic.css_t index 9e5047afe..d8f3fe746 100644 --- a/sphinx/themes/basic/static/basic.css_t +++ b/sphinx/themes/basic/static/basic.css_t @@ -237,6 +237,7 @@ a.headerlink { visibility: hidden; } +{%- if docutils_version_info[:2] < (0, 18) %} a.brackets:before, span.brackets > a:before{ content: "["; @@ -246,6 +247,7 @@ a.brackets:after, span.brackets > a:after { content: "]"; } +{% endif %} h1:hover > a.headerlink, h2:hover > a.headerlink, @@ -335,13 +337,21 @@ p.sidebar-title { font-weight: bold; } -div.admonition, div.topic, aside.topic, blockquote { +{%- if docutils_version_info[:2] >= (0, 18) %} +nav.contents, +aside.topic, +{% endif %} +div.admonition, div.topic, blockquote { clear: left; } /* -- topics ---------------------------------------------------------------- */ -div.topic, aside.topic { +{%- if docutils_version_info[:2] >= (0, 18) %} +nav.contents, +aside.topic, +{% endif %} +div.topic { border: 1px solid #ccc; padding: 7px; margin: 10px 0 10px 0; @@ -379,16 +389,22 @@ div.body p.centered { div.sidebar > :last-child, aside.sidebar > :last-child, -div.topic > :last-child, +{%- if docutils_version_info[:2] >= (0, 18) %} +nav.contents > :last-child, aside.topic > :last-child, +{% endif %} +div.topic > :last-child, div.admonition > :last-child { margin-bottom: 0; } div.sidebar::after, aside.sidebar::after, -div.topic::after, +{%- if docutils_version_info[:2] >= (0, 18) %} +nav.contents::after, aside.topic::after, +{% endif %} +div.topic::after, div.admonition::after, blockquote::after { display: block; diff --git a/sphinx/themes/bizstyle/static/bizstyle.css_t b/sphinx/themes/bizstyle/static/bizstyle.css_t index b5c84e0bb..a524345f9 100644 --- a/sphinx/themes/bizstyle/static/bizstyle.css_t +++ b/sphinx/themes/bizstyle/static/bizstyle.css_t @@ -306,7 +306,11 @@ div.quotebar { border: 1px solid #ccc; } -div.topic, aside.topic { +{%- if docutils_version_info[:2] >= (0, 18) %} +nav.contents, +aside.topic, +{% endif %} +div.topic { background-color: #f8f8f8; } diff --git a/sphinx/themes/classic/static/classic.css_t b/sphinx/themes/classic/static/classic.css_t index 58b55c8bf..789bec811 100644 --- a/sphinx/themes/classic/static/classic.css_t +++ b/sphinx/themes/classic/static/classic.css_t @@ -290,7 +290,11 @@ div.seealso { border: 1px solid #ff6; } -div.topic, aside.topic { +{%- if docutils_version_info[:2] >= (0, 18) %} +nav.contents, +aside.topic, +{% endif %} +div.topic { background-color: #eee; } diff --git a/sphinx/themes/epub/static/epub.css_t b/sphinx/themes/epub/static/epub.css_t index bd64a1bc8..a30344431 100644 --- a/sphinx/themes/epub/static/epub.css_t +++ b/sphinx/themes/epub/static/epub.css_t @@ -245,7 +245,11 @@ p.sidebar-title { /* -- topics ---------------------------------------------------------------- */ -div.topic, aside.topic { +{%- if docutils_version_info[:2] >= (0, 18) %} +nav.contents, +aside.topic, +{% endif %} +div.topic { border: 1px solid #ccc; padding: 7px 7px 0 7px; margin: 10px 0 10px 0; diff --git a/sphinx/themes/nature/static/nature.css_t b/sphinx/themes/nature/static/nature.css_t index f3c0d0224..93f9a5944 100644 --- a/sphinx/themes/nature/static/nature.css_t +++ b/sphinx/themes/nature/static/nature.css_t @@ -194,7 +194,11 @@ div.seealso { border: 1px solid #ff6; } -div.topic, aside.topic { +{%- if docutils_version_info[:2] >= (0, 18) %} +nav.contents, +aside.topic, +{% endif %} +div.topic { background-color: #eee; } diff --git a/sphinx/themes/nonav/static/nonav.css b/sphinx/themes/nonav/static/nonav.css_t index 90c3300cf..933365e07 100644 --- a/sphinx/themes/nonav/static/nonav.css +++ b/sphinx/themes/nonav/static/nonav.css_t @@ -234,7 +234,11 @@ p.sidebar-title { /* -- topics ---------------------------------------------------------------- */ -div.topic, aside.topic { +{%- if docutils_version_info[:2] >= (0, 18) %} +nav.contents, +aside.topic, +{% endif %} +div.topic { border: 1px solid #ccc; padding: 7px 7px 0 7px; margin: 10px 0 10px 0; diff --git a/sphinx/themes/pyramid/static/epub.css b/sphinx/themes/pyramid/static/epub.css_t index 8606c8c8d..98741d0b8 100644 --- a/sphinx/themes/pyramid/static/epub.css +++ b/sphinx/themes/pyramid/static/epub.css_t @@ -254,7 +254,11 @@ div.seealso { border: 1px solid #ff6; } -div.topic, aside.topic { +{%- if docutils_version_info[:2] >= (0, 18) %} +nav.contents, +aside.topic, +{% endif %} +div.topic { background-color: #eee; } diff --git a/sphinx/themes/pyramid/static/pyramid.css_t b/sphinx/themes/pyramid/static/pyramid.css_t index f093ba164..0ced6b29f 100644 --- a/sphinx/themes/pyramid/static/pyramid.css_t +++ b/sphinx/themes/pyramid/static/pyramid.css_t @@ -245,7 +245,11 @@ div.seealso { padding: 10px 20px 10px 60px; } -div.topic, aside.topic { +{%- if docutils_version_info[:2] >= (0, 18) %} +nav.contents, +aside.topic, +{% endif %} +div.topic { background: #eeeeee; border: 2px solid #C6C9CB; padding: 10px 20px; diff --git a/sphinx/themes/sphinxdoc/static/sphinxdoc.css_t b/sphinx/themes/sphinxdoc/static/sphinxdoc.css_t index b6de4ae6f..1817c48bc 100644 --- a/sphinx/themes/sphinxdoc/static/sphinxdoc.css_t +++ b/sphinx/themes/sphinxdoc/static/sphinxdoc.css_t @@ -266,7 +266,11 @@ div.quotebar { border: 1px solid #ccc; } -div.topic, aside.topic { +{%- if docutils_version_info[:2] >= (0, 18) %} +nav.contents, +aside.topic, +{% endif %} +div.topic { background-color: #f8f8f8; } diff --git a/sphinx/themes/traditional/static/traditional.css_t b/sphinx/themes/traditional/static/traditional.css_t index b5b05dc21..8a2f0712f 100644 --- a/sphinx/themes/traditional/static/traditional.css_t +++ b/sphinx/themes/traditional/static/traditional.css_t @@ -506,7 +506,11 @@ p.rubric { /* "Topics" */ -div.topic, aside.topic { +{%- if docutils_version_info[:2] >= (0, 18) %} +nav.contents, +aside.topic, +{% endif %} +div.topic { background-color: #eee; border: 1px solid #ccc; padding: 0 7px 0 7px; |