summaryrefslogtreecommitdiff
path: root/sphinx/parsers.py
diff options
context:
space:
mode:
Diffstat (limited to 'sphinx/parsers.py')
-rw-r--r--sphinx/parsers.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/sphinx/parsers.py b/sphinx/parsers.py
index 2a61971f3..3974d1c66 100644
--- a/sphinx/parsers.py
+++ b/sphinx/parsers.py
@@ -8,6 +8,7 @@
:license: BSD, see LICENSE for details.
"""
+import warnings
from typing import Any, Dict, List, Union
import docutils.parsers
@@ -17,6 +18,7 @@ from docutils.parsers.rst import states
from docutils.statemachine import StringList
from docutils.transforms.universal import SmartQuotes
+from sphinx.deprecation import RemovedInSphinx50Warning
from sphinx.util.rst import append_epilog, prepend_prolog
if False:
@@ -47,6 +49,8 @@ class Parser(docutils.parsers.Parser):
.. deprecated:: 1.6
``warn()`` and ``info()`` is deprecated. Use :mod:`sphinx.util.logging` instead.
+ .. deprecated:: 3.0
+ parser.app is deprecated.
"""
def set_application(self, app: "Sphinx") -> None:
@@ -54,10 +58,15 @@ class Parser(docutils.parsers.Parser):
:param sphinx.application.Sphinx app: Sphinx application object
"""
- self.app = app
+ self._app = app
self.config = app.config
self.env = app.env
+ @property
+ def app(self) -> "Sphinx":
+ warnings.warn('parser.app is deprecated.', RemovedInSphinx50Warning)
+ return self._app
+
class RSTParser(docutils.parsers.rst.Parser, Parser):
"""A reST parser for Sphinx."""