Sphinx 8.1.0__py3-none-any.whl → 8.1.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of Sphinx might be problematic. Click here for more details.

sphinx/__init__.py CHANGED
@@ -1,6 +1,6 @@
1
1
  """The Sphinx documentation toolchain."""
2
2
 
3
- __version__ = '8.1.0'
3
+ __version__ = '8.1.3'
4
4
  __display_version__ = __version__ # used for command line version
5
5
 
6
6
  # Keep this file executable as-is in Python 3!
@@ -30,7 +30,7 @@ warnings.filterwarnings(
30
30
  #:
31
31
  #: .. versionadded:: 1.2
32
32
  #: Before version 1.2, check the string ``sphinx.__version__``.
33
- version_info = (8, 1, 0, 'final', 0)
33
+ version_info = (8, 1, 3, 'final', 0)
34
34
 
35
35
  package_dir = os.path.abspath(os.path.dirname(__file__))
36
36
 
@@ -59,14 +59,20 @@ class Builder:
59
59
  Builds target formats from the reST sources.
60
60
  """
61
61
 
62
- #: The builder's name, for the -b command line option.
63
- name = ''
62
+ #: The builder's name.
63
+ #: This is the value used to select builders on the command line.
64
+ name: str = ''
64
65
  #: The builder's output format, or '' if no document output is produced.
65
- format = ''
66
- #: The message emitted upon successful build completion. This can be a
67
- #: printf-style template string with the following keys: ``outdir``,
68
- #: ``project``
69
- epilog = ''
66
+ #: This is commonly the file extension, e.g. "html",
67
+ #: though any string value is accepted.
68
+ #: The builder's format string can be used by various components
69
+ #: such as :class:`.SphinxPostTransform` or extensions to determine
70
+ #: their compatibility with the builder.
71
+ format: str = ''
72
+ #: The message emitted upon successful build completion.
73
+ #: This can be a printf-style template string
74
+ #: with the following keys: ``outdir``, ``project``
75
+ epilog: str = ''
70
76
 
71
77
  #: default translator class for the builder. This can be overridden by
72
78
  #: :py:meth:`~sphinx.application.Sphinx.set_translator`.
@@ -74,8 +80,8 @@ class Builder:
74
80
  # doctree versioning method
75
81
  versioning_method = 'none'
76
82
  versioning_compare = False
77
- #: allow parallel write_doc() calls
78
- allow_parallel = False
83
+ #: Whether it is safe to make parallel :meth:`~.Builder.write_doc()` calls.
84
+ allow_parallel: bool = False
79
85
  # support translation
80
86
  use_message_catalog = True
81
87
 
@@ -83,9 +89,9 @@ class Builder:
83
89
  #: Image files are searched in the order in which they appear here.
84
90
  supported_image_types: list[str] = []
85
91
  #: The builder can produce output documents that may fetch external images when opened.
86
- supported_remote_images = False
92
+ supported_remote_images: bool = False
87
93
  #: The file format produced by the builder allows images to be embedded using data-URIs.
88
- supported_data_uri_images = False
94
+ supported_data_uri_images: bool = False
89
95
 
90
96
  def __init__(self, app: Sphinx, env: BuildEnvironment) -> None:
91
97
  self.srcdir = app.srcdir
@@ -159,7 +165,7 @@ class Builder:
159
165
  def get_relative_uri(self, from_: str, to: str, typ: str | None = None) -> str:
160
166
  """Return a relative URI between two source filenames.
161
167
 
162
- May raise environment.NoUri if there's no way to return a sensible URI.
168
+ :raises: :exc:`!NoUri` if there's no way to return a sensible URI.
163
169
  """
164
170
  return relative_uri(
165
171
  self.get_target_uri(from_),
@@ -789,7 +795,16 @@ class Builder:
789
795
  pass
790
796
 
791
797
  def write_doc(self, docname: str, doctree: nodes.document) -> None:
792
- """Where you actually write something to the filesystem."""
798
+ """
799
+ Write the output file for the document
800
+
801
+ :param docname: the :term:`docname <document name>`.
802
+ :param doctree: defines the content to be written.
803
+
804
+ The output filename must be determined within this method,
805
+ typically by calling :meth:`~.Builder.get_target_uri`
806
+ or :meth:`~.Builder.get_relative_uri`.
807
+ """
793
808
  raise NotImplementedError
794
809
 
795
810
  def write_doc_serialized(self, docname: str, doctree: nodes.document) -> None:
@@ -54,10 +54,6 @@ default_settings: dict[str, Any] = {
54
54
  'image_loading': 'link',
55
55
  'embed_stylesheet': False,
56
56
  'cloak_email_addresses': True,
57
- 'cve_base_url': 'https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-',
58
- 'cve_references': None,
59
- 'cwe_base_url': 'https://cwe.mitre.org/data/definitions/',
60
- 'cwe_references': None,
61
57
  'pep_base_url': 'https://peps.python.org/',
62
58
  'pep_references': None,
63
59
  'rfc_base_url': 'https://datatracker.ietf.org/doc/html/',
@@ -186,7 +186,7 @@ def merge_members_option(options: dict) -> None:
186
186
  # Some useful event listener factories for autodoc-process-docstring.
187
187
 
188
188
  def cut_lines(
189
- pre: int, post: int = 0, what: str | list[str] | None = None
189
+ pre: int, post: int = 0, what: Sequence[str] | None = None
190
190
  ) -> _AutodocProcessDocstringListener:
191
191
  """Return a listener that removes the first *pre* and last *post*
192
192
  lines of every docstring. If *what* is a sequence of strings,
@@ -199,7 +199,12 @@ def cut_lines(
199
199
 
200
200
  This can (and should) be used in place of :confval:`automodule_skip_lines`.
201
201
  """
202
- what_unique = frozenset(what or ())
202
+ if not what:
203
+ what_unique: frozenset[str] = frozenset()
204
+ elif isinstance(what, str): # strongly discouraged
205
+ what_unique = frozenset({what})
206
+ else:
207
+ what_unique = frozenset(what)
203
208
 
204
209
  def process(
205
210
  app: Sphinx,
@@ -209,7 +214,7 @@ def cut_lines(
209
214
  options: dict[str, bool],
210
215
  lines: list[str],
211
216
  ) -> None:
212
- if what_ not in what_unique:
217
+ if what_unique and what_ not in what_unique:
213
218
  return
214
219
  del lines[:pre]
215
220
  if post:
sphinx/roles.py CHANGED
@@ -17,6 +17,7 @@ from sphinx.util.docutils import ReferenceRole, SphinxRole
17
17
 
18
18
  if TYPE_CHECKING:
19
19
  from collections.abc import Sequence
20
+ from typing import Final
20
21
 
21
22
  from docutils.nodes import Element, Node, TextElement, system_message
22
23
 
@@ -197,6 +198,8 @@ class AnyXRefRole(XRefRole):
197
198
 
198
199
 
199
200
  class CVE(ReferenceRole):
201
+ _BASE_URL: Final = 'https://www.cve.org/CVERecord?id=CVE-'
202
+
200
203
  def run(self) -> tuple[list[Node], list[system_message]]:
201
204
  target_id = f'index-{self.env.new_serialno("index")}'
202
205
  entries = [
@@ -233,14 +236,15 @@ class CVE(ReferenceRole):
233
236
  return [index, target, reference], []
234
237
 
235
238
  def build_uri(self) -> str:
236
- base_url = self.inliner.document.settings.cve_base_url
237
239
  ret = self.target.split('#', 1)
238
240
  if len(ret) == 2:
239
- return f'{base_url}{ret[0]}#{ret[1]}'
240
- return f'{base_url}{ret[0]}'
241
+ return f'{CVE._BASE_URL}{ret[0]}#{ret[1]}'
242
+ return f'{CVE._BASE_URL}{ret[0]}'
241
243
 
242
244
 
243
245
  class CWE(ReferenceRole):
246
+ _BASE_URL: Final = 'https://cwe.mitre.org/data/definitions/'
247
+
244
248
  def run(self) -> tuple[list[Node], list[system_message]]:
245
249
  target_id = f'index-{self.env.new_serialno("index")}'
246
250
  entries = [
@@ -277,11 +281,10 @@ class CWE(ReferenceRole):
277
281
  return [index, target, reference], []
278
282
 
279
283
  def build_uri(self) -> str:
280
- base_url = self.inliner.document.settings.cwe_base_url
281
284
  ret = self.target.split('#', 1)
282
285
  if len(ret) == 2:
283
- return f'{base_url}{int(ret[0])}.html#{ret[1]}'
284
- return f'{base_url}{int(ret[0])}.html'
286
+ return f'{CWE._BASE_URL}{int(ret[0])}.html#{ret[1]}'
287
+ return f'{CWE._BASE_URL}{int(ret[0])}.html'
285
288
 
286
289
 
287
290
  class PEP(ReferenceRole):
@@ -9,7 +9,7 @@
9
9
  % by the Sphinx LaTeX writer.
10
10
 
11
11
  \NeedsTeXFormat{LaTeX2e}[1995/12/01]
12
- \ProvidesPackage{sphinx}[2024/07/28 v8.1.0 Sphinx LaTeX package (sphinx-doc)]
12
+ \ProvidesPackage{sphinx}[2024/10/11 v8.1.1 Sphinx LaTeX package (sphinx-doc)]
13
13
 
14
14
  % provides \ltx@ifundefined
15
15
  % (many packages load ltxcmds: graphicx does for pdftex and lualatex but
@@ -885,15 +885,12 @@
885
885
  {\DeclareStringOption[fontawesome]{iconpackage}}
886
886
  {\DeclareStringOption[none]{iconpackage}}%
887
887
  }%
888
- \newcommand\spx@faIcon[3][]{}%
889
- % The hacky definition of \spx@faIcon above is to let it by default swallow
890
- % the icon macro and the \sphinxtitlerowaftericonspacecmd (see
891
- % \sphinxdotitlerowwithicon in sphinxlatexadmonitions.sty) which inserts
892
- % a space between it and title. See how \spx@faIcon is used below.
893
- %
894
- % If user sets a title-icon key to some LaTeX code of their own, of course
895
- % \spx@faIcon is not executed and the inserted space will thus be there, as
896
- % expected.
888
+ \newcommand\spx@faIcon[2][]{}%
889
+ % The above \spx@faIcon which gobbles one mandatory and one optional
890
+ % argument is put into use only if both fontawesome5 and fontawesome
891
+ % LaTeX packages are not available, as part of the defaults for the
892
+ % div.*_title-icon keys (these keys can be redefined via the sphinxsetup
893
+ % interface).
897
894
  %
898
895
  \def\spxstring@fontawesome{fontawesome}
899
896
  \def\spxstring@fontawesomev{fontawesome5}
@@ -920,8 +917,8 @@
920
917
  \let\faicon@pen\faPencil
921
918
  \fi
922
919
  % if neither has been required, \spx@faIcon will simply swallow
923
- % its argument (and follwing space macro) and it is up to user
924
- % to set the keys appropriately.
920
+ % its argument and it is up to user
921
+ % to set the various div.*_title-icon keys appropriately.
925
922
  \fi\fi %
926
923
  }%
927
924
  {%
@@ -1,7 +1,7 @@
1
1
  %% NOTICES AND ADMONITIONS
2
2
  %
3
3
  % change this info string if making any custom modification
4
- \ProvidesPackage{sphinxlatexadmonitions}[2024/07/28 v8.1.0 admonitions]
4
+ \ProvidesPackage{sphinxlatexadmonitions}[2024/10/11 v8.1.1 admonitions]
5
5
 
6
6
  % Provides support for this output mark-up from Sphinx latex writer:
7
7
  %
@@ -341,9 +341,11 @@
341
341
  \ifdim\wd\z@>\z@
342
342
  \textcolor{sphinx#1TtlFgColor}{%
343
343
  \@nameuse{sphinx#1TtlIcon}%
344
- % This macro is located here and not after the closing brace
345
- % for reasons of fall-back \spx@faIcon definition in sphinx.sty
346
- % in case fontawesome5 package not found.
344
+ % The next macro is located here for legacy reasons of earlier
345
+ % functioning of \spx@faIcon. When fontawesome{5,}.sty both
346
+ % are unavailable, it (formerly) gobbled this next macro.
347
+ % We leave it here now although it could be moved to after
348
+ % the closing brace.
347
349
  \sphinxtitlerowaftericonspacecmd
348
350
  }%
349
351
  \fi
sphinx/util/__init__.py CHANGED
@@ -8,6 +8,7 @@ import posixpath
8
8
  import re
9
9
  from typing import Any
10
10
 
11
+ from sphinx.errors import ExtensionError as _ExtensionError
11
12
  from sphinx.errors import FiletypeNotFoundError
12
13
  from sphinx.util import _files, _importer, logging
13
14
  from sphinx.util import index_entries as _index_entries
@@ -86,6 +87,7 @@ _DEPRECATED_OBJECTS: dict[str, tuple[Any, str, tuple[int, int]]] = {
86
87
  'sphinx.util.index_entries.split_into',
87
88
  (9, 0),
88
89
  ),
90
+ 'ExtensionError': (_ExtensionError, 'sphinx.errors.ExtensionError', (9, 0)),
89
91
  'md5': (_md5, '', (9, 0)),
90
92
  'sha1': (_sha1, '', (9, 0)),
91
93
  'import_object': (_importer.import_object, '', (10, 0)),
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: Sphinx
3
- Version: 8.1.0
3
+ Version: 8.1.3
4
4
  Summary: Python documentation generator
5
5
  Author-email: Georg Brandl <georg@python.org>
6
6
  Requires-Python: >=3.10
@@ -80,6 +80,7 @@ Requires-Dist: setuptools>=70.0 ; extra == "test"
80
80
  Requires-Dist: typing_extensions>=4.9 ; extra == "test"
81
81
  Project-URL: Changelog, https://www.sphinx-doc.org/en/master/changes.html
82
82
  Project-URL: Code, https://github.com/sphinx-doc/sphinx
83
+ Project-URL: Documentation, https://www.sphinx-doc.org/
83
84
  Project-URL: Download, https://pypi.org/project/Sphinx/
84
85
  Project-URL: Homepage, https://www.sphinx-doc.org/
85
86
  Project-URL: Issue tracker, https://github.com/sphinx-doc/sphinx/issues
@@ -1,4 +1,4 @@
1
- sphinx/__init__.py,sha256=OhECOWcGcaYrjAs8UhiPG6OVbZa6gWqseZAfjC6VoqU,1703
1
+ sphinx/__init__.py,sha256=NzDifYZPgrj_eVP6oOa-Pl21zcIADGEBRx6KAHJMmsQ,1703
2
2
  sphinx/__main__.py,sha256=wIifwXlZHdi4gtQmkJ6KF0BsflvD9o0Wd5nARTdJc8A,127
3
3
  sphinx/addnodes.py,sha256=EQTIi9Zta6DaNa-2WGE3l9AVjdp7WzwwrfwRnax8vXE,18707
4
4
  sphinx/application.py,sha256=j1EjhSnXce7HcgHeRGfDrhOuMCs2Ha-0TRfVMmq9SQ8,65788
@@ -15,14 +15,14 @@ sphinx/project.py,sha256=8jf0rDETXDA4_4pYNXfQ8dqLlKoKBQSe4SSGSgVHGbA,4570
15
15
  sphinx/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
16
  sphinx/pygments_styles.py,sha256=4ube8wmrKx-Luigixj-odhVb8RqDf_3R0u2Cgsqk8t4,2586
17
17
  sphinx/registry.py,sha256=gphep-zWqZ4W_CpFbrnm18BDXTBRL4QzSVYHSdx0dBw,22898
18
- sphinx/roles.py,sha256=hIECVpqF_UCDwLqF__eptGS-8lejrFWbJ48M1Jl_FwA,20891
18
+ sphinx/roles.py,sha256=JLureyhoE67-zj7offy8WJpvpLPz2qWv-WFnqxUl08s,20944
19
19
  sphinx/theming.py,sha256=nAu6quZhsM8jU1__BkT0xH_axwwDFVJKxDRxntnj3ag,19997
20
20
  sphinx/versioning.py,sha256=pvzL18Sz0UMwixvGg65IneuaMNtmgl_cVSCQ4MxJ_vw,6246
21
21
  sphinx/_cli/__init__.py,sha256=AWTELmWU_5J7uiuNQYi1mQfH483Z0ZYeYonNdmb5O9A,9982
22
22
  sphinx/_cli/util/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
23
  sphinx/_cli/util/colour.py,sha256=M04FGs_3Dpet0SmIyRg8I7gKbta8mfAGMObocgZX5N8,2997
24
24
  sphinx/_cli/util/errors.py,sha256=_3YWZbr0vItrMcZ0zsLr2IqaCEEkJf4lmNhKO7AH5UI,4852
25
- sphinx/builders/__init__.py,sha256=ePfyqt-laqx10df6upr6w9J9Jkpg2EV2dVQD2HkO7mM,31848
25
+ sphinx/builders/__init__.py,sha256=0lDANXVqejGXYL0dF1BPy0IzJ_FUHPUWEMt7dwhMpvs,32542
26
26
  sphinx/builders/_epub_base.py,sha256=-FGIGZ-4Cu3KWqeb2QfprBKl6x7REt5i4uJvBEwZVeE,29848
27
27
  sphinx/builders/changes.py,sha256=Izkn2P-EZnMtEn3LXes8ho2SvY7XrUaPBdJVjaUGejk,6958
28
28
  sphinx/builders/dirhtml.py,sha256=knJB8YAxmOj4mOx5AWpqbDxs-QVPJpZpsjuEvRzAdqg,1552
@@ -76,7 +76,7 @@ sphinx/domains/python/__init__.py,sha256=K5-RSG0_u_hhvmKj9M_lN9JPgH8bIJ90LRdn93N
76
76
  sphinx/domains/python/_annotations.py,sha256=cO7U8JvRcKX1CObNlZrO57UcuhfTNRnczOHmVZiMixo,23388
77
77
  sphinx/domains/python/_object.py,sha256=DMEhPh_iOy5Cps637KVNuyuRDVBs1XFdWD99ujRRwJY,17018
78
78
  sphinx/domains/std/__init__.py,sha256=m8yHdbEn75p7YcVzmJn8ihEcX8h-RPgKg7tjuUd1l_w,49494
79
- sphinx/environment/__init__.py,sha256=RfPu9lngh35yOyIV6gZoL4uOMQutns-fI__25B7aaQQ,32699
79
+ sphinx/environment/__init__.py,sha256=oTgkI2qqUOMw4EcuyZNMJJ66ILqPdYm0khqX-l_ikgs,32505
80
80
  sphinx/environment/adapters/__init__.py,sha256=VnDotW2UbxjWeVITmz7iTsVrzqQcvmLHr3euKqqKHwo,34
81
81
  sphinx/environment/adapters/asset.py,sha256=6-jxJqm8DcOJ0CIqPFal88m6New3aYHK3K0dWrrwy64,480
82
82
  sphinx/environment/adapters/indexentries.py,sha256=nSfXBe47CoUzz26DEFb3RzewKVBbmv5S6kdmdbKeay4,9788
@@ -104,7 +104,7 @@ sphinx/ext/linkcode.py,sha256=yW0wlG-XvC-WZr5yE82jHX4348uAJcFQInDEeyWS_Us,2679
104
104
  sphinx/ext/mathjax.py,sha256=mw5g5VYf6yablxyvD_MnyKl-jWOgg0GcSniPClMNN9k,5349
105
105
  sphinx/ext/todo.py,sha256=dLVReq5kIQM9roxq4xd9E-lNQ2mBiFRQ3uVPe5RD3O4,8343
106
106
  sphinx/ext/viewcode.py,sha256=_lnsW6NPZHZ0ZDw70L8lrIWcsc3cAOiA3-345I_88wc,13855
107
- sphinx/ext/autodoc/__init__.py,sha256=wue7fSynVINruYIyVN45kK0eMWjhYUVfDTzWh6OzCJ8,115307
107
+ sphinx/ext/autodoc/__init__.py,sha256=o0pciLv0gkI1kjFXk9ieVQC5MlmUXuXT4-R1bG0Q0jY,115492
108
108
  sphinx/ext/autodoc/directive.py,sha256=0i6Tp6WTd8UEupIAqic9BRN1OpPMhxII-uMY_77mRL0,5872
109
109
  sphinx/ext/autodoc/importer.py,sha256=xf0QhszfsBZRk4Vy6eCGIuG9tHvvMVhDU89oREJe5Z0,15595
110
110
  sphinx/ext/autodoc/mock.py,sha256=qMGXSS0-s4ODVC8u0Ao9-TSTqbw2Nhcg3ZuQhBcl9dc,6049
@@ -419,10 +419,10 @@ sphinx/texinputs/latexmkjarc.jinja,sha256=MAEuOfgjE56gBm5tt9pr3x1dLkaYQRVvtLKKOy
419
419
  sphinx/texinputs/latexmkrc.jinja,sha256=CaSKfWWrcA-l0BMSxa8h3YFf-C_hMjsNs2fe5Z9XEwA,1104
420
420
  sphinx/texinputs/make.bat.jinja,sha256=ZgR_dDOU01AT_VFmD4L97dbpTDSUGHksLjVfTmBj2gg,1041
421
421
  sphinx/texinputs/python.ist,sha256=G47jS0AbTU91qQ7ZEo8qwX7rGAIiyyV1DlLPaO_wIVE,392
422
- sphinx/texinputs/sphinx.sty,sha256=R3T5VRdvuDzK5dP5PnbGlvQEBAL3Kh54I2vzcMtfAH4,54273
422
+ sphinx/texinputs/sphinx.sty,sha256=8JY_4h7EZJV1RhH2H6KirI3zBH5w5_2q5vSl8mT0wDM,54119
423
423
  sphinx/texinputs/sphinx.xdy,sha256=QWncK0Ie81AneS7M6R0kbOYv2tebzm1jluAXYnxS4b4,9475
424
424
  sphinx/texinputs/sphinxhowto.cls,sha256=IzFjVXa79iEvsI5q4sUCEcdyYE2gMbXIh50gt9QYCI8,3256
425
- sphinx/texinputs/sphinxlatexadmonitions.sty,sha256=Pw5j5HdTsUd2B7fpAhls3LlCxR4w7rOJyReKk546AWQ,18991
425
+ sphinx/texinputs/sphinxlatexadmonitions.sty,sha256=193TM6nSTdVQ2rNXgoFJukl1UoF5kh-Sil6AWozhobg,19110
426
426
  sphinx/texinputs/sphinxlatexcontainers.sty,sha256=_j93wx3CLRDr5uMO7OOWaeCKHsDEN5h-K-0H9kgaNoU,900
427
427
  sphinx/texinputs/sphinxlatexgraphics.sty,sha256=BGG4zRnsJ3w2d2OgWjhSHG5qOsOO9bmCjIHRv2rYUVY,4918
428
428
  sphinx/texinputs/sphinxlatexindbibtoc.sty,sha256=Erde_bnrAsJBt42eQD3IZ_5L5iPmscXIDZ6mGRK6b6s,2065
@@ -545,7 +545,7 @@ sphinx/transforms/references.py,sha256=AyYHJcv4mPfrCdD7kKn-2oLSP8oxh6GJ8rjgahVYB
545
545
  sphinx/transforms/post_transforms/__init__.py,sha256=zIroXaSf1wQb31I71TqaaQIZjW7ZbMicNuU0RC0WvBg,13086
546
546
  sphinx/transforms/post_transforms/code.py,sha256=1jUfLRdmoHJkMFbAvyY4XD5CBghZUTAouQydA_ttCk0,4496
547
547
  sphinx/transforms/post_transforms/images.py,sha256=qpUVLkjlSKzb_IzKoRXTc_Xxn6OnwizJrg45QmEb4QU,10790
548
- sphinx/util/__init__.py,sha256=sIasAvJMElWYQs3XkV45Wsi9mvHS4S8f9truPnSAAbU,3192
548
+ sphinx/util/__init__.py,sha256=nTGTyMcQhKYmu2kRLZNr23UwrYjKR7Fkef71jx0Wt9c,3333
549
549
  sphinx/util/_files.py,sha256=iKEaNsz9mxspOX_F1XLmsVdBssSlCxcizTsNVdmVgaQ,2666
550
550
  sphinx/util/_importer.py,sha256=qqQWn2TAGY6FS0WJ8aDjFnUdhadDX7hVavJYEs_CAZo,885
551
551
  sphinx/util/_io.py,sha256=-KaagsRCwlKg8lpHJBf3KqCc_GD8r8BDS_veph3VTrA,894
@@ -591,8 +591,8 @@ sphinx/writers/manpage.py,sha256=R0S02xJ0YdDZ3IPh-8po5qHOPWy5bciiOpesGF9-yC8,163
591
591
  sphinx/writers/texinfo.py,sha256=-b5PgRRuoGF51OS8Gbz3hV-iA-swjT2T552tb5Bkg_4,53082
592
592
  sphinx/writers/text.py,sha256=jXEXXXCyFFLXGKatrdxipgX3cJP9Wc4-X01SQFmJAYo,43426
593
593
  sphinx/writers/xml.py,sha256=5HXyJd1sRRzY3p3sE-_esSYlQjhtW9TU6yrRPv2Uoy0,1563
594
- sphinx-8.1.0.dist-info/entry_points.txt,sha256=KU_c9jqXj7yyZylSz11XRIXG3gAZApQa0d5DmcfyA7M,188
595
- sphinx-8.1.0.dist-info/LICENSE.rst,sha256=uL2etL9JJaDLeIqs1Hm7ZNqo4AsoMO_3WiFzvc2zuu0,1476
596
- sphinx-8.1.0.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
597
- sphinx-8.1.0.dist-info/METADATA,sha256=DAoDRISjJq4AQOacyEiNaSKtzkLlOOhOJ0UC5zdgCXo,6351
598
- sphinx-8.1.0.dist-info/RECORD,,
594
+ sphinx-8.1.3.dist-info/entry_points.txt,sha256=KU_c9jqXj7yyZylSz11XRIXG3gAZApQa0d5DmcfyA7M,188
595
+ sphinx-8.1.3.dist-info/LICENSE.rst,sha256=uL2etL9JJaDLeIqs1Hm7ZNqo4AsoMO_3WiFzvc2zuu0,1476
596
+ sphinx-8.1.3.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
597
+ sphinx-8.1.3.dist-info/METADATA,sha256=Ch4EXexDqDeSICIN8dH9zecBaX5x66hJ4fd7WjJi3S0,6407
598
+ sphinx-8.1.3.dist-info/RECORD,,
File without changes