jenkins-bot has submitted this change and it was merged.
Change subject: [IMPROV] pagegenerators: Use standard deprecation ......................................................................
[IMPROV] pagegenerators: Use standard deprecation
The deprecation message in pagegenerators when the old -logevents syntax is used is now using the standard text. This is also fixing a small syntax error as the colon between the argument name and value was missing in the message.
Change-Id: I6b52748d29e866e7598d0d0709eb27043229d2c5 --- M pywikibot/pagegenerators.py M pywikibot/tools/__init__.py M tests/pagegenerators_tests.py 3 files changed, 16 insertions(+), 11 deletions(-)
Approvals: Xqt: Looks good to me, approved jenkins-bot: Verified
diff --git a/pywikibot/pagegenerators.py b/pywikibot/pagegenerators.py index 7971750..77bb77e 100644 --- a/pywikibot/pagegenerators.py +++ b/pywikibot/pagegenerators.py @@ -39,6 +39,7 @@ deprecated, deprecated_args, redirect_func, + issue_deprecation_warning, DequeGenerator, intersect_generators, filter_unique, @@ -793,10 +794,11 @@ user = None else: user = None - warn(u'The usage of "{0}" is deprecated. Use -logevents ' - u'"{1}" instead'.format( - arg, ','.join((mode, user or '', str(total)))), - ArgumentDeprecationWarning, 2) + issue_deprecation_warning( + 'The usage of "{0}"'.format(arg), + '-logevents:"{0}"'.format( + ','.join((mode, user or '', str(total)))), + 2, ArgumentDeprecationWarning) gen = self._parse_log_events(mode, user, total)
if gen: diff --git a/pywikibot/tools/__init__.py b/pywikibot/tools/__init__.py index 34be4cc..49db6c6 100644 --- a/pywikibot/tools/__init__.py +++ b/pywikibot/tools/__init__.py @@ -1095,14 +1095,17 @@ return outer_wrapper
-def issue_deprecation_warning(name, instead, depth): +def issue_deprecation_warning(name, instead, depth, warning_class=None): """Issue a deprecation warning.""" if instead: - warn('{0} is deprecated; use {1} instead.'.format(name, instead), - DeprecationWarning, depth + 1) + if warning_class is None: + warning_class = DeprecationWarning + warn(u'{0} is deprecated; use {1} instead.'.format(name, instead), + warning_class, depth + 1) else: - warn(u'{0} is deprecated.'.format(name), _NotImplementedWarning, - depth + 1) + if warning_class is None: + warning_class = _NotImplementedWarning + warn('{0} is deprecated.'.format(name), warning_class, depth + 1)
@add_full_name diff --git a/tests/pagegenerators_tests.py b/tests/pagegenerators_tests.py index dc55725..dccd20c 100755 --- a/tests/pagegenerators_tests.py +++ b/tests/pagegenerators_tests.py @@ -783,8 +783,8 @@ def test_logevents_default(self): gf = pagegenerators.GeneratorFactory(site=self.site) self.assertTrue(gf.handleArg('-newuserslog')) - self.assertDeprecation('The usage of "-newuserslog" is deprecated.' - ' Use -logevents "newusers,,500" instead') + self.assertOneDeprecationParts('The usage of "-newuserslog"', + '-logevents:"newusers,,500"') gen = gf.getCombinedGenerator() self.assertIsNotNone(gen) pages = set(gen)