summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Turner <9087854+AA-Turner@users.noreply.github.com>2023-04-27 16:01:14 +0100
committerGitHub <noreply@github.com>2023-04-27 16:01:14 +0100
commit262e1d9857f28c4a97f1325a43c7fd981a13900c (patch)
treea48986835901b8edaeebd8a6433802537a362005
parent24f476949d698d4a90f385eac3a2e8868b6a34f8 (diff)
downloadsphinx-git-262e1d9857f28c4a97f1325a43c7fd981a13900c.tar.gz
Remove deprecated ``sphinx.io.read_doc()`` function (#11372)
-rw-r--r--CHANGES1
-rw-r--r--sphinx/io.py38
2 files changed, 2 insertions, 37 deletions
diff --git a/CHANGES b/CHANGES
index 7bd8f7250..ed9ac8ddc 100644
--- a/CHANGES
+++ b/CHANGES
@@ -19,6 +19,7 @@ Incompatible changes
``sphinx.util.i18n.format_date()``.
* #11370: Remove deprecated ``sphinx.util.stemmer`` module.
* #11371: Remove deprecated ``sphinx.pycode.ast.parse()`` function.
+* #11372: Remove deprecated ``sphinx.io.read_doc()`` function.
Deprecated
----------
diff --git a/sphinx/io.py b/sphinx/io.py
index f2a0369ad..335502e57 100644
--- a/sphinx/io.py
+++ b/sphinx/io.py
@@ -1,8 +1,6 @@
"""Input/Output files"""
from __future__ import annotations
-import codecs
-import warnings
from typing import TYPE_CHECKING, Any
import docutils
@@ -11,14 +9,12 @@ from docutils.core import Publisher
from docutils.frontend import Values
from docutils.io import FileInput, Input, NullOutput
from docutils.parsers import Parser
-from docutils.parsers.rst import Parser as RSTParser
from docutils.readers import standalone
from docutils.transforms import Transform
from docutils.transforms.references import DanglingReferences
from docutils.writers import UnfilteredWriter
from sphinx import addnodes
-from sphinx.deprecation import RemovedInSphinx70Warning
from sphinx.environment import BuildEnvironment
from sphinx.transforms import AutoIndexUpgrader, DoctreeReadEvent, SphinxTransformer
from sphinx.transforms.i18n import (
@@ -27,7 +23,7 @@ from sphinx.transforms.i18n import (
RemoveTranslatableInline,
)
from sphinx.transforms.references import SphinxDomains
-from sphinx.util import UnicodeDecodeErrorHandler, get_filetype, logging
+from sphinx.util import logging
from sphinx.util.docutils import LoggingReporter
from sphinx.versioning import UIDTransform
@@ -160,38 +156,6 @@ class SphinxFileInput(FileInput):
super().__init__(*args, **kwargs)
-def read_doc(app: Sphinx, env: BuildEnvironment, filename: str) -> nodes.document:
- """Parse a document and convert to doctree."""
- warnings.warn('sphinx.io.read_doc() is deprecated.',
- RemovedInSphinx70Warning, stacklevel=2)
-
- # set up error_handler for the target document
- error_handler = UnicodeDecodeErrorHandler(env.docname)
- codecs.register_error('sphinx', error_handler) # type: ignore
-
- reader = SphinxStandaloneReader()
- reader.setup(app)
- filetype = get_filetype(app.config.source_suffix, filename)
- parser = app.registry.create_source_parser(app, filetype)
- if parser.__class__.__name__ == 'CommonMarkParser' and parser.settings_spec == ():
- # a workaround for recommonmark
- # If recommonmark.AutoStrictify is enabled, the parser invokes reST parser
- # internally. But recommonmark-0.4.0 does not provide settings_spec for reST
- # parser. As a workaround, this copies settings_spec for RSTParser to the
- # CommonMarkParser.
- parser.settings_spec = RSTParser.settings_spec
-
- pub = Publisher(reader=reader,
- parser=parser,
- writer=SphinxDummyWriter(),
- source_class=SphinxFileInput,
- destination=NullOutput())
- pub.process_programmatic_settings(None, env.settings, None) # type: ignore[arg-type]
- pub.set_source(source_path=filename)
- pub.publish()
- return pub.document
-
-
def create_publisher(app: Sphinx, filetype: str) -> Publisher:
reader = SphinxStandaloneReader()
reader.setup(app)