jenkins-bot submitted this change.

View Change

Approvals: Xqt: Looks good to me, approved jenkins-bot: Verified
[IMPR] Make ModuleDeprecationWrapper._add_deprecated_attr public

_add_deprecated_attr method of ModuleDeprecationWrapper is intended
to be used outside the module to deprecate module parts. Make this
method public by renaming it. This also ensures that the method is
documented in sphinx documentation:
https://doc.wikimedia.org/pywikibot/master/api_ref/pywikibot.tools.html?highlight=moduledeprecationwrapper#pywikibot.tools.ModuleDeprecationWrapper

Change-Id: Id23d00e6bfbeb11cd735677394aaa4c2770c3de1
---
M pywikibot/__init__.py
M pywikibot/data/api.py
M pywikibot/exceptions.py
M pywikibot/family.py
M pywikibot/i18n.py
M pywikibot/interwiki_graph.py
M pywikibot/login.py
M pywikibot/page/__init__.py
M pywikibot/proofreadpage.py
M pywikibot/site/__init__.py
M pywikibot/specialbots/__init__.py
M pywikibot/specialbots/_unlink.py
M pywikibot/tools/__init__.py
M pywikibot/version.py
14 files changed, 44 insertions(+), 45 deletions(-)

diff --git a/pywikibot/__init__.py b/pywikibot/__init__.py
index cb84609..682afa9 100644
--- a/pywikibot/__init__.py
+++ b/pywikibot/__init__.py
@@ -1353,14 +1353,14 @@
_putthread.setDaemon(True)

wrapper = _ModuleDeprecationWrapper(__name__)
-wrapper._add_deprecated_attr('config2', replacement_name='pywikibot.config',
- since='20210426', future_warning=True)
-wrapper._add_deprecated_attr('__release__', __version__,
- replacement_name='pywikibot.__version__',
- since='20200707')
-wrapper._add_deprecated_attr('showHelp', show_help,
- since='20200705', future_warning=True)
-wrapper._add_deprecated_attr(
+wrapper.add_deprecated_attr('config2', replacement_name='pywikibot.config',
+ since='20210426', future_warning=True)
+wrapper.add_deprecated_attr('__release__', __version__,
+ replacement_name='pywikibot.__version__',
+ since='20200707')
+wrapper.add_deprecated_attr('showHelp', show_help,
+ since='20200705', future_warning=True)
+wrapper.add_deprecated_attr(
'unicode2html', replacement_name='pywikibot.tools.chars.string2html',
since='6.2.0', future_warning=True)

@@ -1384,7 +1384,7 @@
else:
replacement = name

- wrapper._add_deprecated_attr(
+ wrapper.add_deprecated_attr(
name,
replacement_name='pywikibot.exceptions.{}'.format(replacement),
since='20210424', future_warning=True
diff --git a/pywikibot/data/api.py b/pywikibot/data/api.py
index 4974223..5a99fcb 100644
--- a/pywikibot/data/api.py
+++ b/pywikibot/data/api.py
@@ -3163,12 +3163,12 @@


wrapper = ModuleDeprecationWrapper(__name__)
-wrapper._add_deprecated_attr(
+wrapper.add_deprecated_attr(
'APIError', replacement_name='pywikibot.exceptions.APIError',
since='20210423', future_warning=True)
-wrapper._add_deprecated_attr(
+wrapper.add_deprecated_attr(
'UploadWarning', replacement_name='pywikibot.exceptions.UploadError',
since='20210423', future_warning=True)
-wrapper._add_deprecated_attr(
+wrapper.add_deprecated_attr(
'APIMWException', replacement_name='pywikibot.exceptions.APIMWError',
since='20210423', future_warning=True)
diff --git a/pywikibot/exceptions.py b/pywikibot/exceptions.py
index 290cc4c..8846815 100644
--- a/pywikibot/exceptions.py
+++ b/pywikibot/exceptions.py
@@ -717,5 +717,5 @@

for old_name, new_name in DEPRECATED_EXCEPTIONS.items():
setattr(module, old_name, getattr(module, new_name))
- wrapper._add_deprecated_attr(old_name, replacement_name=new_name,
- since='20210423', future_warning=True)
+ wrapper.add_deprecated_attr(old_name, replacement_name=new_name,
+ since='20210423', future_warning=True)
diff --git a/pywikibot/family.py b/pywikibot/family.py
index 5e29376..85a60b1 100644
--- a/pywikibot/family.py
+++ b/pywikibot/family.py
@@ -1254,5 +1254,5 @@


wrapper = ModuleDeprecationWrapper(__name__)
-wrapper._add_deprecated_attr('WikiaFamily', replacement=FandomFamily,
- since='20190420')
+wrapper.add_deprecated_attr('WikiaFamily', replacement=FandomFamily,
+ since='20190420')
diff --git a/pywikibot/i18n.py b/pywikibot/i18n.py
index c08bc1f..c08306b 100644
--- a/pywikibot/i18n.py
+++ b/pywikibot/i18n.py
@@ -814,7 +814,7 @@


wrapper = ModuleDeprecationWrapper(__name__)
-wrapper._add_deprecated_attr(
+wrapper.add_deprecated_attr(
'TranslationError',
replacement_name='pywikibot.exceptions.TranslationError',
since='20210423', future_warning=True)
diff --git a/pywikibot/interwiki_graph.py b/pywikibot/interwiki_graph.py
index cae429f..e2d2a0e 100644
--- a/pywikibot/interwiki_graph.py
+++ b/pywikibot/interwiki_graph.py
@@ -226,7 +226,7 @@
GraphImpossible = ImportError

wrapper = ModuleDeprecationWrapper(__name__)
-wrapper._add_deprecated_attr(
+wrapper.add_deprecated_attr(
'GraphImpossible',
replacement_name='ImportError',
since='20210423',
diff --git a/pywikibot/login.py b/pywikibot/login.py
index a74042c..5b88d84 100644
--- a/pywikibot/login.py
+++ b/pywikibot/login.py
@@ -476,7 +476,7 @@
OAuthImpossible = ImportError

wrapper = ModuleDeprecationWrapper(__name__)
-wrapper._add_deprecated_attr(
+wrapper.add_deprecated_attr(
'OAuthImpossible',
replacement_name='ImportError',
since='20210423',
diff --git a/pywikibot/page/__init__.py b/pywikibot/page/__init__.py
index 9c3a1b3..dc4542d 100644
--- a/pywikibot/page/__init__.py
+++ b/pywikibot/page/__init__.py
@@ -5760,11 +5760,11 @@


wrapper = ModuleDeprecationWrapper(__name__)
-wrapper._add_deprecated_attr(
+wrapper.add_deprecated_attr(
'UnicodeToAsciiHtml',
replacement_name='pywikibot.tools.chars.string_to_ascii_html',
since='6.2.0', future_warning=True)
-wrapper._add_deprecated_attr(
+wrapper.add_deprecated_attr(
'unicode2html',
replacement_name='pywikibot.tools.chars.string2html',
since='6.2.0', future_warning=True)
diff --git a/pywikibot/proofreadpage.py b/pywikibot/proofreadpage.py
index 4fe3ba8..c564c76 100644
--- a/pywikibot/proofreadpage.py
+++ b/pywikibot/proofreadpage.py
@@ -1098,5 +1098,5 @@


wrapper = ModuleDeprecationWrapper(__name__)
-wrapper._add_deprecated_attr('Soup', _bs4_soup, replacement_name='_bs4_soup',
- since='20181128', future_warning=True)
+wrapper.add_deprecated_attr('Soup', _bs4_soup, replacement_name='_bs4_soup',
+ since='20181128', future_warning=True)
diff --git a/pywikibot/site/__init__.py b/pywikibot/site/__init__.py
index d4cd3ea..312cbf4 100644
--- a/pywikibot/site/__init__.py
+++ b/pywikibot/site/__init__.py
@@ -21,7 +21,7 @@
_logger = 'wiki.site'

wrapper = ModuleDeprecationWrapper(__name__)
-wrapper._add_deprecated_attr(
+wrapper.add_deprecated_attr(
'PageInUse',
replacement_name='pywikibot.exceptions.PageInUseError',
since='20210423',
diff --git a/pywikibot/specialbots/__init__.py b/pywikibot/specialbots/__init__.py
index bffae00..080ba21 100644
--- a/pywikibot/specialbots/__init__.py
+++ b/pywikibot/specialbots/__init__.py
@@ -21,7 +21,7 @@
)

wrapper = ModuleDeprecationWrapper(__name__)
-wrapper._add_deprecated_attr(
+wrapper.add_deprecated_attr(
'EditReplacement',
replacement_name='pywikibot.exceptions.EditReplacementError',
since='20210423',
diff --git a/pywikibot/specialbots/_unlink.py b/pywikibot/specialbots/_unlink.py
index aa3e105..e23b904 100644
--- a/pywikibot/specialbots/_unlink.py
+++ b/pywikibot/specialbots/_unlink.py
@@ -98,7 +98,7 @@
EditReplacement = EditReplacementError

wrapper = ModuleDeprecationWrapper(__name__)
-wrapper._add_deprecated_attr(
+wrapper.add_deprecated_attr(
'EditReplacement',
replacement_name='EditReplacementError',
since='20210423',
diff --git a/pywikibot/tools/__init__.py b/pywikibot/tools/__init__.py
index 877d447..6c4dce6 100644
--- a/pywikibot/tools/__init__.py
+++ b/pywikibot/tools/__init__.py
@@ -1818,11 +1818,11 @@
if __debug__:
sys.modules[module.__name__] = self

- def _add_deprecated_attr(self, name: str, replacement=None,
- replacement_name: Optional[str] = None,
- warning_message: Optional[str] = None,
- since: Optional[str] = None,
- future_warning: bool = False):
+ def add_deprecated_attr(self, name: str, replacement: Any = None, *,
+ replacement_name: Optional[str] = None,
+ warning_message: Optional[str] = None,
+ since: Optional[str] = None,
+ future_warning: bool = False):
"""
Add the name to the local deprecated names dict.

@@ -1831,7 +1831,6 @@
@param replacement: The replacement value which should be returned
instead. If the name is already an attribute of that module this
must be None. If None it'll return the attribute of the module.
- @type replacement: any
@param replacement_name: The name of the new replaced value. Required
if C{replacement} is not None and it has no __name__ attribute.
If it contains a '.', it will be interpreted as a Python dotted
@@ -1992,18 +1991,18 @@


wrapper = ModuleDeprecationWrapper(__name__)
-wrapper._add_deprecated_attr('empty_iterator', replacement_name='iter(())',
- since='20220422', future_warning=True)
-wrapper._add_deprecated_attr('DotReadableDict', replacement_name='',
- since='20210416', future_warning=True)
-wrapper._add_deprecated_attr('frozenmap',
- replacement_name='types.MappingProxyType',
- since='20210415',
- future_warning=True)
-wrapper._add_deprecated_attr('LazyRegex', replacement_name='',
- since='20210418', future_warning=True)
-wrapper._add_deprecated_attr('DeprecatedRegex', replacement_name='',
- since='20210418', future_warning=True)
+wrapper.add_deprecated_attr('empty_iterator', replacement_name='iter(())',
+ since='20220422', future_warning=True)
+wrapper.add_deprecated_attr('DotReadableDict', replacement_name='',
+ since='20210416', future_warning=True)
+wrapper.add_deprecated_attr('frozenmap',
+ replacement_name='types.MappingProxyType',
+ since='20210415',
+ future_warning=True)
+wrapper.add_deprecated_attr('LazyRegex', replacement_name='',
+ since='20210418', future_warning=True)
+wrapper.add_deprecated_attr('DeprecatedRegex', replacement_name='',
+ since='20210418', future_warning=True)


is_IP = redirect_func(is_ip_address, old_name='is_IP', # noqa N816
diff --git a/pywikibot/version.py b/pywikibot/version.py
index 21f3d75..34b8535 100644
--- a/pywikibot/version.py
+++ b/pywikibot/version.py
@@ -504,7 +504,7 @@
ParseError = VersionParseError

wrapper = ModuleDeprecationWrapper(__name__)
-wrapper._add_deprecated_attr(
+wrapper.add_deprecated_attr(
'ParseError',
replacement_name='pywikibot.exceptions.VersionParseError',
since='20210423',

To view, visit change 696937. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Change-Id: Id23d00e6bfbeb11cd735677394aaa4c2770c3de1
Gerrit-Change-Number: 696937
Gerrit-PatchSet: 2
Gerrit-Owner: Xqt <info@gno.de>
Gerrit-Reviewer: Isaacandy <isaac@iznd.xyz>
Gerrit-Reviewer: Siebrand <siebrand@kitano.nl>
Gerrit-Reviewer: Xqt <info@gno.de>
Gerrit-Reviewer: jenkins-bot
Gerrit-MessageType: merged