From c83ddf5f3974119bc952997930de4cd5b0648695 Mon Sep 17 00:00:00 2001 From: Adam Turner <9087854+aa-turner@users.noreply.github.com> Date: Mon, 24 Apr 2023 08:17:38 +0100 Subject: [PATCH 1/2] Remove util.stemmer --- sphinx/util/stemmer/__init__.py | 62 --------------------------------- 1 file changed, 62 deletions(-) delete mode 100644 sphinx/util/stemmer/__init__.py diff --git a/sphinx/util/stemmer/__init__.py b/sphinx/util/stemmer/__init__.py deleted file mode 100644 index 9f91ce59e35..00000000000 --- a/sphinx/util/stemmer/__init__.py +++ /dev/null @@ -1,62 +0,0 @@ -"""Word stemming utilities for Sphinx.""" - -import warnings - -import snowballstemmer - -from sphinx.deprecation import RemovedInSphinx70Warning - - -class PorterStemmer: - def __init__(self) -> None: - warnings.warn(f"{self.__class__.__name__} is deprecated, use " - "snowballstemmer.stemmer('porter') instead.", - RemovedInSphinx70Warning, stacklevel=2) - self.stemmer = snowballstemmer.stemmer('porter') - - def stem(self, p: str, i: int, j: int) -> str: - warnings.warn(f"{self.__class__.__name__}.stem() is deprecated, use " - "snowballstemmer.stemmer('porter').stemWord() instead.", - RemovedInSphinx70Warning, stacklevel=2) - return self.stemmer.stemWord(p) - - -class BaseStemmer: - def __init__(self) -> None: - warnings.warn(f"{self.__class__.__name__} is deprecated, use " - "snowballstemmer.stemmer('porter') instead.", - RemovedInSphinx70Warning, stacklevel=3) - - def stem(self, word: str) -> str: - raise NotImplementedError - - -class PyStemmer(BaseStemmer): - def __init__(self) -> None: - super().__init__() - self.stemmer = snowballstemmer.stemmer('porter') - - def stem(self, word: str) -> str: - warnings.warn(f"{self.__class__.__name__}.stem() is deprecated, use " - "snowballstemmer.stemmer('porter').stemWord() instead.", - RemovedInSphinx70Warning, stacklevel=2) - return self.stemmer.stemWord(word) - - -class StandardStemmer(BaseStemmer): - def __init__(self) -> None: - super().__init__() - self.stemmer = snowballstemmer.stemmer('porter') - - def stem(self, word: str) -> str: - warnings.warn(f"{self.__class__.__name__}.stem() is deprecated, use " - "snowballstemmer.stemmer('porter').stemWord() instead.", - RemovedInSphinx70Warning, stacklevel=2) - return self.stemmer.stemWord(word) - - -def get_stemmer() -> BaseStemmer: - warnings.warn("get_stemmer() is deprecated, use " - "snowballstemmer.stemmer('porter') instead.", - RemovedInSphinx70Warning, stacklevel=2) - return PyStemmer() From 259dd095f8fbf687148f28c88173ee0e105875e9 Mon Sep 17 00:00:00 2001 From: Adam Turner <9087854+aa-turner@users.noreply.github.com> Date: Thu, 27 Apr 2023 14:29:43 +0100 Subject: [PATCH 2/2] CHANGES --- CHANGES | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGES b/CHANGES index 9d3edcb8969..72ee3bf644c 100644 --- a/CHANGES +++ b/CHANGES @@ -17,6 +17,7 @@ Incompatible changes * #11365: Remove support for the ``jsdump`` format in ``sphinx.search``. * #11366: Make ``locale`` a required argument to ``sphinx.util.i18n.format_date()``. +* #11370: Remove deprecated ``sphinx.util.stemmer`` module. Deprecated ----------